generateList deprecated
2008-01-09 14:05:51-06
Desarrollo
Cambiando Karamelo a la 1.2 de CakePHP me encuentro que el método $model->generateList() está "deprecated", este método se usa para generar un combo en la vista pero al parecer no posee la flexibilidad al querer armar valores con varios modelos o con varios campos de una misma tabla. Ahora se debe usar list('all') y luego Set::combine().
En la versión 1.1 se hacia asi para pasar los datos a la vista:
$this->set('harvests', $this->Contract->Harvest->generateList(null, 'Harvest.description', null,'{n}.Harvest.id', '{n}.Harvest.description' ));
Ahora en la 1.2 es:
$this->set('harvests', Set::combine($this->Contract->Harvest->find('all'), "{n}.Harvest.id","{n}.Harvest.description"));
por supuesto $model->find() posee muchas más opciones y es más potente que generateList(). En la vista se usa el helper $form->select() para mostrar el combo:
echo $form->label('Contract.harvest_id', 'Harvest:');
echo $form->select('Contract.harvest_id', $harvests, null, null, null) . '
';
Gnuget tiene un post muy útil sobre esto. Por cierto hay que tener en cuenta que ahora existe un atributo $displayField en la clase Model para indicar que campo deseamos mostrar en estos casos.
En la versión 1.1 se hacia asi para pasar los datos a la vista:
$this->set('harvests', $this->Contract->Harvest->generateList(null, 'Harvest.description', null,'{n}.Harvest.id', '{n}.Harvest.description' ));
Ahora en la 1.2 es:
$this->set('harvests', Set::combine($this->Contract->Harvest->find('all'), "{n}.Harvest.id","{n}.Harvest.description"));
por supuesto $model->find() posee muchas más opciones y es más potente que generateList(). En la vista se usa el helper $form->select() para mostrar el combo:
echo $form->label('Contract.harvest_id', 'Harvest:');
echo $form->select('Contract.harvest_id', $harvests, null, null, null) . '
';
Gnuget tiene un post muy útil sobre esto. Por cierto hay que tener en cuenta que ahora existe un atributo $displayField en la clase Model para indicar que campo deseamos mostrar en estos casos.
Permalink: http://www.mononeurona.org/users/entry/aarkerio/1039
Comentblogs:










