array
"subQuantity" =>
array
"quantity_6" => string "23" (length=2)
"quantity_16" => string "23" (length=2)
"quantity_18" => string "23" (length=2)
"update" => string "Update" (length=6)
¡Buen día! Acabo de crear un subformulario de mi formulario zend existente y obtengo esta información cuando se envía el formulario. En función de los datos publicados (los elementos de cantidad), me gustaría establecer los valores a elementos de subformulación. ¿Es posible? Gracias por adelantado. ¡salud y feliz codificación!
Respuestas
7 para la respuesta № 1No estoy seguro de si desea establecer valores de elementos de subformulario individuales o todos a la vez. Sin embargo, puedes usar el método populate. Por ejemplo:
$yourForm->populate(array(
"subQuantity" => array(
"quantity_6" => "some value 1",
"quantity_16" => "some value 2",
"quantity_18" => "some value 3",
)
));
EDITAR:
Aquí hay algunas formas de configurar campos individuales:
$yourForm->populate(array(
"subQuantity" => array(
"quantity_16" => "some value",
)
));
// OR
$yourForm->getSubForm("subQuantity")->getElement("quantity_16")->setValue("some value");
// this also should work (not sure if it works with underscore in "quantity_16" though)
$yourForm->subQuantity->quantity_16->setValue("some value");
0 para la respuesta № 2
$formSuper = new ContractLink_Form_ContractAllotmentSuper();
foreach($allotments as $key => $allotment)
{
$form = new ContractLink_Form_ContractAllotment();
$form->populate($allotment);
$formSuper->addSubForm($form, "contractAllotmentForm" . $key);
}