gpt4 book ai didi

php - Symfony2- Twig : HTML Tag

转载 作者:行者123 更新时间:2023-11-28 03:14:41 26 4
gpt4 key购买 nike

我需要创建一个带标签的选择。

这是我用来填充选择的代码

        ->add('city', 'entity', array(
'empty_value' => 'Choisissez une option',
'class' => 'FrontBundle:City',
'query_builder' => function(EntityRepository $er) {
return $er->createQueryBuilder('c')
->orderBy('c.city', 'ASC');
},
))

这是我在 html.twig 中的代码

                    <div class="form-group">
{{ form_label(form.city, 'Ville') }}
<div class="col-sm-8">
{{ form_widget(form.city) }}
</div>
</div>

这是我想要得到的结果:

<select>
<optgroup label="Région 1">
<option value="ville 1">Ville 1</option>
<option value="ville 2">Ville 2</option>
</optgroup>
<optgroup label="Région 2">
<option value="ville 3">Ville 3</option>
<option value="ville 4">Ville 4</option>
</optgroup>
</select>

有什么想法吗?谢谢。

最佳答案

作为gp_sfloverin comments , 您可以使用 group_by option entity 字段类型:

This is a property path (e.g. author.name) used to organize the available choices in groups. It only works when rendered as a select tag and does so by adding optgroup elements around options. Choices that do not return a value for this property path are rendered directly under the select tag, without a surrounding optgroup.

因此,假设 regioncity 的属性,您的代码应该如下所示:

    ->add('city', 'entity', array(
'empty_value' => 'Choisissez une option',
'class' => 'FrontBundle:City',
'query_builder' => function(EntityRepository $er) {
return $er->createQueryBuilder('c')
->orderBy('c.city', 'ASC');
},
'group_by' => 'region',
))

关于php - Symfony2- Twig : HTML <optgroup> Tag,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28781953/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com