hola, estoy intentando trabajar con codeigniter2 y doctrine2 y la verdad esque tengo una complicacion un poco tonta. no se como llamar desde los controladores a un método de un model definido con doctrine2.
Ademas de esto mi aplicacion lo estoy trabajando en hmvc, asi separo mi aplicacion por módulos., entonces yo tengo un modulo llamado blog. que es una carpeta dentro de application/modules/blog/ y dentro de esta una carpeta para controladores, modelos y vistas.
Esto corre muy bien. El único problema es que no se como llamar al método lo intente de la siguiente manera:
controlador blog.php
Código PHP:
Ver originalclass Blog extends MX_Controller
{
function __construct()
{
parent::__construct();
$this->load->library('doctrine');
$this->em = $this->doctrine->em;
}
/**
* Método Principal de blog que nos permitira a travez de una grilla
* gestionar el blog
*/
function index()
{
$this->load->library('doctrine');
//$cat = new models/categorias;
$rs =$this->em->getRepository('blog\models\categorias')
->getAll(1);
echo $rs;
//$rs =
//$this->load->view('vGrillaBlog');
}
}
En $rs =$this->em->getRepository('blog\models\categorias') ->getAll(1);
Segun se doctrine dos llama repositorios a las tablas entonces por eso pongo getRepository y si ese es el repositorio, entonces acceder an método pense que seria con getAll(), porque defini ese método pero me sale el siguiente error:
Código PHP:
Ver originalFatal error: Uncaught exception 'BadMethodCallException' with message 'Undefined method 'getAll'. The method name must start with either findBy or findOneBy!' in /var/www/cms/trunk/eagle/application/third_party/doctrine-orm/Doctrine/ORM/EntityRepository.php:186 Stack trace: #0 /var/www/cms/trunk/eagle/application/modules/blog/controllers/blog.php(28): Doctrine\ORM\EntityRepository->__call('getAll', Array) #1 /var/www/cms/trunk/eagle/application/modules/blog/controllers/blog.php(28): Doctrine\ORM\EntityRepository->getAll(1) #2 [internal function]: Blog->index() #3 /var/www/cms/trunk/eagle/system/core/CodeIgniter.php(339): call_user_func_array(Array, Array) #4 /var/www/cms/trunk/eagle/index.php(163): require_once('/var/www/cms/tr...') #5 {main} thrown in /var/www/cms/trunk/eagle/application/third_party/doctrine-orm/Doctrine/ORM/EntityRepository.php on line 186