在选择列表中组合列 Symfony 形式
Combine columns in choice list Symfony form
在我的 Symfony 表单中,我有一个 choiceType 字段列出类别。我的类别 table 看起来像这样:
id code categorie
1 100 First categorie
2 200 Second categorie
3 210 Second subcategorie
在我的表单中,我有一个 select 字段,使用 'choice_label' 我可以决定将 'code' 或 'categorie' 列用于 select ] 列表。我想同时使用两者,以便用户有一个 select 列表显示:
- 100 第一类
- 200个二类
- ..等
是否可以加入 choice_label 的 2 列;连接字符串中的 2 列只是为了显示 select 选项?
我试图在这里和其他地方找到它。官方docs没有提到这个选项。
即使在 choice_label 的 ChoiceType 中,您也可以使用 callable 来设置它 link
'choice_label' => function($category, $key, $index) {
/** @var Category $category */
return $category->getId() . ' ' . $category->getName();
},
但是你为什么要为你的类别使用ChoiceType,你打算如何设置选择?你为什么不使用 EntityType?
->add('category', EntityType::class, array(
'choice_label' => function ($category) {
return $category->getId() . ' ' . $category->getName();
},
'class' => 'AppBundle:Category',
'query_builder' => function (EntityRepository $er) {
return $er->createQueryBuilder('c')
->orderBy('c.id', 'ASC');
},
))
在我的 Symfony 表单中,我有一个 choiceType 字段列出类别。我的类别 table 看起来像这样:
id code categorie
1 100 First categorie
2 200 Second categorie
3 210 Second subcategorie
在我的表单中,我有一个 select 字段,使用 'choice_label' 我可以决定将 'code' 或 'categorie' 列用于 select ] 列表。我想同时使用两者,以便用户有一个 select 列表显示:
- 100 第一类
- 200个二类
- ..等
是否可以加入 choice_label 的 2 列;连接字符串中的 2 列只是为了显示 select 选项? 我试图在这里和其他地方找到它。官方docs没有提到这个选项。
即使在 choice_label 的 ChoiceType 中,您也可以使用 callable 来设置它 link
'choice_label' => function($category, $key, $index) {
/** @var Category $category */
return $category->getId() . ' ' . $category->getName();
},
但是你为什么要为你的类别使用ChoiceType,你打算如何设置选择?你为什么不使用 EntityType?
->add('category', EntityType::class, array(
'choice_label' => function ($category) {
return $category->getId() . ' ' . $category->getName();
},
'class' => 'AppBundle:Category',
'query_builder' => function (EntityRepository $er) {
return $er->createQueryBuilder('c')
->orderBy('c.id', 'ASC');
},
))