forms - 具有多个预先选中复选框的Symfony窗体

  显示原文与译文双语对照的内容
0 0

我目前正在开发一个symfony项目,我需要一个表单来编辑一个名为 Location的现有实体。 一个 Location 对象可以保存 0 to nMachines 。 窗体应包含多个复选框,具有预先选择的值取决于天气的实体 Location 已经包含任何 Machine 。 如果是,选中复选框,如果不保留为空。

位置:


...
class Location
{ 
/**
 * @ORMOneToMany(targetEntity="Machine", mappedBy="location")
 * 
 */
 private $machines;
...

机器:


...
class Machine
{

/**
 * @ORMManyToOne(targetEntity="Location", inversedBy="machines")
 * @ORMJoinColumn(name="location_id", referencedColumnName="id")
 */
 private $location; 
. . .

我构建了这样的表单:


$form = $this->createFormBuilder($location)
 ->add('name', null, array( 'label' => 'Roomname: ', 'attr'=> array( 'placeholder'=>'Enter a name') ) )
 ->add('descr', null, array( 'label' => 'Description: ', 'attr'=> array( 'placeholder'=>'Enter a description') ) ) 
 ->add('machines', 'entity', array('class' => 'PRwissHostsBundle:Machine',
 'property' => 'name',
 'required' => false, 
 'expanded' => true,
 'multiple' => true, 

 ))
 ->getForm();

上面的代码在表单中产生了一对复选框,其中的实体名旁边有。 我想先选择那些机器已经与位置相关的复选框。

我已经看过这个问题,但是unfortunatly只引用一个值。

我怎么能做到这一点? 提前致谢!

时间: 原作者:

0 0

在控制器中添加计算机到位置实体,就在初始化窗体之前。 Symfony表单将根据实体数据自动设置复选框的值。

...