2014-09-30 109 views
1

我有一个对象 - 书与人收集里面(每个人都有名称属性),我需要创建一个表单类型的人它是一个简单的复选框,但我想作为每个复选框上的人名称标签如何操作?Symfony2表单集合与自定义标签

我的BookType:

$builder->add('persons', 'collection', array(
    'type' => 'checkbox', 
    'options' => array(
     'required' => false, 
    ), 
)); 

如何添加标签与人的名字

+0

您应该自定义集合小部件的'prototype'。 [此解决方案](http://stackoverflow.com/questions/7555702/how-to-customize-the-data-prototype-attribute-in-symfony-2-forms#answer-9545936)应该工作。 – lsouza 2014-09-30 22:17:08

+1

为什么不使用'Entity'作为表单类型?您可以将'expanded'和'multiple'设置为'true',以使其呈现为复选框。 – Hpatoio 2014-10-01 07:15:20

回答

0

我不确定我是否理解你的问题,但我会尽力帮助你。

你已经试过了吗?

这会在您的形式,它具有每个“VendorBundle的“属性名称”字段:

$builder->add('persons','entity', array(
       'class'  => 'VendorBundle:Entity', 
       'property' => 'name', 
       'label'  => 'YourLabel' 
      )) 

(“实体VendorBundle”和“YourLabel”通过改变适应你的配置代码):人'并且在下拉字段之前有一个标签'YourLabel'。