Ver Mensaje Individual
  #7 (permalink)  
Antiguo 13/10/2011, 13:05
Avatar de GatorV
GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 18 años
Puntos: 2135
Respuesta: Form y pasar MultiOptions a un Select

Cita:
Iniciado por masterpuppet Ver Mensaje
a ver, primero, esto no entiendo como te funciona:

Código php:
Ver original
  1. public function setdefaultsfromentity($user, $select)
  2. {
  3.     $select = $this->getelement('delegation');
  4.     $select->clearmultioptions();
  5.     $select->addmultioptions($select);
  6.     ...
  7. }

si lo tienes tal cual estas pisando $select no debería cargarte el select, y segundo ten en cuenta el orden, deberias agregar primero los elementos y luego validar, en el orden actual estas validando antes de agregarlos. Por consiguiente el valor no esta en el array y dispara el validator ;)

Código php:
Ver original
  1. public function editaction()
  2. {    
  3.     $form = new application_form_useredit();
  4.     $form->setdefaultsfromentity($repository, $select);
  5.     if( $this->getrequest()->ispost()  
  6.                 && $form->isvalid($this->getrequest()->getpost()) ) {
  7.         // procesa los datos
  8.         // redirector
  9.     }
  10.     $this->view->formedit = $form;
  11. }

te sugiero que extiendas zend_form_multi o zend_form_element_select para que soporte queries de doctrine, luego con crear el elemento y pasarle la query seria suficiente sin necesidad de agregar los datos en el controller.

Saludos.
+1000