symfony2表单实体选项值

时间:2013-06-11 10:54:49

标签: forms symfony entity field

我需要使用具有实体类型的symfony创建一个表单,所以这是使用

->add('assignee', 'entity', array(
           'label' => 'Assignee',
           'class'  => 'PortalBundle:TrnUser',
           'property' => 'username',
           ))

在生成的html中,它将userid指定为选项值,但我需要用户名作为选项值。像,

<option value="admin">admin</option>

我该怎么做?请帮忙。

感谢..

2 个答案:

答案 0 :(得分:3)

您需要数据转换器。它们可以帮助您根据需要以表单形式显示数据。 在那里,您可以找到有关Symfony2中的数据变换器的所有信息:

http://symfony.com/doc/current/cookbook/form/data_transformers.html

答案 1 :(得分:0)

您可以使用&#39; choice_value&#39;选项,包含您要使用的字段的名称而不是ID。

        $builder
        ->add('user', 'entity', [
            'class' => 'YourBundle\Entity\Locations',
            'property' => 'name',
            'choice_value' => 'name',
            'required' => true,
        ])