CakePhp: Você pode consultar o banco de dados de uma classe auxiliar?
-
26-09-2019 - |
Pergunta
Olá, só preciso saber se você pode consultar o banco de dados de dentro de uma classe auxiliar, seja você e como faz isso.
Obrigado
Solução
Você pode, passando uma referência ao modelo para a vista como uma variável via $ this-> set () e depois consultando-o ... mas não deveria. É bagunçado ;-)
O CakePHP usa o modelo MVC e os ajudantes fazem parte da visualização (o V de MVC) - seu trabalho é puramente exibir as informações (já disponíveis) passadas para ele do controlador.
Se sua visualização precisar de informações extras, seu controlador já deve ter consultado os modelos para obtê -los.
Eu sugiro que você leia o modelo MVC se não estiver familiarizado com ele, então alguma refatoração pode estar em ordem!
Outras dicas
Sim. Você pode consultar o banco de dados do seu arquivo auxiliar. Por favor, checar isto :-
class YourHelperNameHelper extends AppHelper {
function queryDbFromHelper()
{
// Load your model here
App::import('Model','ModelName');
$this->ModelName = new ModelName();
//now you can use find method or another method to query DB.
return $this->ModelName->find('all');
}
}
// Include this helper in controller
var $helpers = array('YourHelperName');
// call this function in helper file.
$this->YourHelperName->queryDbFromHelper();