Pregunta

Hola sólo necesita saber si se puede consultar la base de datos desde el interior de una clase de ayuda, ya que debe y cómo lo hace.

Gracias

¿Fue útil?

Solución

Usted puede, pasando una referencia al modelo en la vista como una variable a través de $ this-> set () y luego consultar ... pero que no debería. Es desordenado; -)

CakePHP usa el modelo MVC, y ayudantes son parte de la vista (la V de MVC) -. Su trabajo es puramente para mostrar la información (ya disponible) se le ha pasado desde el controlador

Si su vista necesita información adicional, a continuación, el controlador debería haber consultado ya los modelos para conseguirlo.

Te sugiero que lea sobre el modelo MVC si no está familiarizado con él, a continuación, algunos refactorización podría estar en orden!

Otros consejos

Sí. Se puede consultar la base de datos desde el archivo de ayuda. Por favor, compruebe lo siguiente: -

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();
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top