具有自定义不可选分隔符的Symfony实体字段类型

时间:2015-02-14 11:00:02

标签: forms symfony select entity

假设我有一个实体City,其cityName也具有1,2或3的优先级。我需要创建一个选择框,其中城市按优先级排序(升序),并在优先级更改之前添加分隔符。列表看起来应该是这样的:

---Big cities:
bigCity1
bigCity2
bigCity3
---Smaller cities:
smallerCity1
smallerCity2
smallerCity3
smallerCity4
---Smallest cities:
smallestCity1
smallestCity2
....

那些以---开头的分隔符不应该是可选的。 目前我的formType看起来像这样:

class SelectCityFormType extends AbstractType
{
    public function buildForm(FormBuilderInterface $builder, array $options)
    {
        $builder
            ->add('city', 'entity', array(
                'class' => 'MainBundle:City',
                'property' => 'city',
            ))
            ->add('Select', 'submit');
    }
    public function getName()
    {
        return 'selectCityForm';
    }
}

我如何实现我的目标?

1 个答案:

答案 0 :(得分:0)

您可以按指定字段使用optgroup tag to group城市。只需将'group_by' => 'field_name'选项添加到城市字段即可。