And*_*erj 11 forms image-upload symfony-forms symfony doctrine-orm
我需要设置symfony2表单元素的值.我在Controllers Action中使用了一个doctrine2实体,一个Symfony\Component\Form\AbstractType和createForm()方法.
$saleDataForm = $this->createForm(new SaleType(), $sale);
Run Code Online (Sandbox Code Playgroud)
现在,我如何从该表单中获取元素,以及如何设置它的值?我想做这样的事情,但它不起作用:
$saleDataForm->get('image')->setValue('someimapge.jpg');
Run Code Online (Sandbox Code Playgroud)
FYI:我需要这样做,以正确渲染场(使用这种方法,我像场总是空的,我需要将其设置为内容的ImagePath呈现上传图像的预览)
Mat*_*ijk 14
要获得更准确的答案,您应该在此表单中包含您使用的实体,以便我们可以看到getter和setter.但根据你的问题,这应该工作: 在控制器内执行此操作:
$saleDataForm->getData()->getImage()->setValue('someimage.jpg');
$form->setData($form->getData());
Run Code Online (Sandbox Code Playgroud)
如果表单已经创建,那么:
$saleDataForm = $this->createForm(new SaleType(), $sale);
$saleDataForm->getData()->getImage()->setValue('someimage.jpg');
$form->setData($form->getData());
Run Code Online (Sandbox Code Playgroud)
要获取数据,请使用:
$saleDataForm->getData()->getImage()->getValue();
Run Code Online (Sandbox Code Playgroud)
感谢MatsRietdijk,你帮了我,但我不得不改变代码
$form = $this->createForm(new SaleType(), $sale);
$form->getData()->setImage('someimage.jpg');
$form->setData($form->getData());
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
20289 次 |
最近记录: |