Tengo una aplicacion modular, en donde por ejemplo, para poder obtener la funcion BaseUrl() (creada por mi) en todo momento se hizo lo siguiente (lo copié de un tutorial).
Se creo un Archivo en la Carpeta Plugin, llamado LoadView.php cual parte del codigo es este:
Código:
Y el helper(nose si denominarlo asi), se llama BaseUrl.php y tiene el siguiente codigo.lass MisClases_Plugins_LoadView extends Zend_Controller_Plugin_Abstract { protected $_auth; protected $_viewRenderer; public function dispatchLoopStartup( Zend_Controller_Request_Abstract $request) { $this->_viewRenderer = Zend_Controller_Action_HelperBroker::getStaticHelper('viewRenderer'); $this->_viewRenderer->setView( new Zend_View() ); $prefix = ''; //$dir = '../app/modules/default/views/helpers/'; //Aca le digo, que va a usar un path, unico para los helpers de los views $dir = '../library/MisClases/'; $this->_viewRenderer->view->addHelperPath($dir, $prefix); //$this->_viewRenderer->view->addScriptPath( './app/views/scripts/' ); */ $this->_viewRenderer->view->baseUrl = $request->getBaseUrl(); }
Código:
class BaseUrl { function baseUrl() { $fc = Zend_Controller_Front::getInstance(); $request = $fc->getRequest(); return $request->getBaseUrl(); } }
Ahora bien, esto funciona perfecto, puedo llamar
Código:
y funciona en cualquier parte, lo que quiero realizar es otro Helper, en donde se conecte a la base de datos y me devuelva los datos resueltos.this->baseUrl();
Para ello cree un helper llamado ArbolCategorias.php con el siguiente codigo
Código:
Mis dudas, es que nose como implementarlo en el archivo LoadView.php, para que este disponible. Tampoco se si hay que implementarlo en el LoadView, o en otro archivo. class ArbolCategorias { function obtenerArbol() { //Instancio la Base de Datos, esto esta en Models// $albums = new Categorias(); //Digo que la variable Select va a ser un SELECT// $select = $albums->select(); //Armo la Consulta// $select->from($albums, "Name")->where("ID=?",1); $datos = $albums->fetchAll($select)->toArray(); return $datos; } }
Nose si me expliqué bien.
Me podrian dar una mano?
Desde ya, muchas gracias.