如何将我所需字段的星号放在我的标签上?(Symfony形式)

Mic*_*ger 1 forms required symfony form-fields

我正在研究Symfony 3,我的表格有些问题.

当我创建一个不需要字段的Symfony表单时,这是我的代码:

我创建了表单:

$form = $this->createFormBuilder()
  ->add('prenom' TextType::class, array(
    'label'    => 'Votre prénom',
    'required' => false
  )
  ->getForm();
Run Code Online (Sandbox Code Playgroud)

以下是我对此字段的视图中的代码:

{{ form_label(form.prenom) }}
{{ form_errors(form.prenom) }}
{{ form_widget(form.prenom) }}
Run Code Online (Sandbox Code Playgroud)

这是我的HTML:

<label class="control-label" for="contact_prenom">Votre prénom</label>
<input type="text" id="contact_prenom" name="contact[prenom]" class="form-control"/>
Run Code Online (Sandbox Code Playgroud)

现在如果我没有'require' => false在我的FormBuilder上做同样的事情,这里是我得到的HTML:

<label class="control-label required" for="contact_prenom">Votre prénom</label>
<sup class="required" title="Champ obligatoire">
        <i class="fa fa-asterisk"></i>
</sup>
<input type="text" id="contact_prenom" name="contact[prenom]" required="required" class="form-control" />
Run Code Online (Sandbox Code Playgroud)

是否可以控制"sup"标签,以便星号*可以与我的标签一起使用?

我想我可以用jQuery来做,但是我想知道是否可以在我的表单构建器或Twig中执行它?

ste*_*ste 8

在文档中有一个特定的部分http://symfony.com/doc/current/form/form_customization.html#adding-a-required-asterisk-to-field-labels

你甚至可以只使用CSS

label.required:before {
    content: "* ";
}
Run Code Online (Sandbox Code Playgroud)