我有一个需要绑定到symfony中的表单的变量,如何将动作文件中的数据绑定到表单?
行动档案 $ this-> unitCost = $ this-> getUser() - > getAttribute('unit_cost'); $ value_lists =($ this-> unitCost);
foreach($value_lists as $values)
{
echo $values['unit_cost'];
}
$form = new MyForm(); $form->bind(array('unit_cost' => $values['unit_cost']));
//print_r($value_lists);
表 public function configure(){
$cost_range[''] = '-- Please select --';
for ($i = 0; ($i <= 100); $i++) {
$cost_range[$i] = $i;
}
$this->setWidgets(array(
'user_id' => new sfWidgetFormDoctrineChoice(array('model' => 'Person', 'add_empty' => '-- Please select --'), array('onchange' => 'filerUnitCostByName()', 'id' => 'user_id')),
'unit_cost' => new sfWidgetFormSelect(array('choices' => $cost_range), array('id'=>'unit_cost')),
));
如何通过表单中的数字下拉显示绑定值 我从下拉列表中获取数据并放入会话,然后检索操作中的数据。我想在使用widget创建的表单中创建的下拉列表中设置所选变量。你可以在小部件区域看到。我想将该值添加为默认值。
答案 0 :(得分:2)
对于POST请求中的绑定变量,您可以执行以下操作:
$form = new MyForm();
$form->bind($request->getParameter($form->getName()), $request->getFiles($form->getName()));
如果你想绑定一个额外的变量,你可以这样做:
$form = new MyForm();
$form->bind(array_merge($request->getParameter($form->getName()), array('foo' => $foo)), $request->getFiles($form->getName()));
编辑:没有POST变量,你可以这样做:
$form = new MyForm();
$form->bind(array('foo' => $foo));