保存渲染结果以再次使用它
Saving render result to use it again
我正在尝试在我的控制器中构建一个表单,我的表单包含两个“select”选项,它们使用相同的数据库 table 字段“villes”
我想使用这个字段两次,一次用于城市出发,另一次用于城市到达
$form = $this->createFormBuilder($vol)
->add('hor_dep')
->add('villes')
->add('villes')
->add('prix')
->add('reduc', CheckboxType::class, array('required' => true, 'label' => 'Réduction'))
->add('nbr_place')
->getForm();
但是当我尝试渲染这个时 form.html.twig
<div class="col-lg-6">
{{ form_label(form.hor_dep,'Heure de départ') }}
{{ form_widget(form.hor_dep) }}
{{ form_label(form.villes,'Ville de départ') }}
{{ form_row(form.villes) }}
{{ form_label(form.hor_arrivee,"Heure d'arrivée") }}
{{ form_widget(form.hor_arrivee) }}
{{ form_label(form.villes,"Ville d'arrivée") }}
{{ form_widget(form.villes) }}
</div>
<div class="col-lg-6">
{{ form_label(form.prix,'Prix') }}
{{ form_widget(form.prix) }}
{{ form_label(form.reduc,'possède une réduction ?') }}
{{ form_widget(form.reduc) }}
{{ form_label(form.nbr_place,'Nombre de place') }}
{{ form_widget(form.nbr_place) }}
</div>
它抛出这个错误
An exception has been thrown during the rendering of a template ("Field "villes" has already been rendered, save the result of previous render call to a variable and output that instead.").
在您的情况下,您必须在 formType 中添加两个字段:villeDepart
& villeArrivee
(就像您对 heure
所做的那样),因为您不希望第一个表单域被第二个表单域覆盖。
在您的映射中,这两个字段将指向相同的 villes
table,但每个字段将具有不同的值。
我正在尝试在我的控制器中构建一个表单,我的表单包含两个“select”选项,它们使用相同的数据库 table 字段“villes” 我想使用这个字段两次,一次用于城市出发,另一次用于城市到达
$form = $this->createFormBuilder($vol)
->add('hor_dep')
->add('villes')
->add('villes')
->add('prix')
->add('reduc', CheckboxType::class, array('required' => true, 'label' => 'Réduction'))
->add('nbr_place')
->getForm();
但是当我尝试渲染这个时 form.html.twig
<div class="col-lg-6">
{{ form_label(form.hor_dep,'Heure de départ') }}
{{ form_widget(form.hor_dep) }}
{{ form_label(form.villes,'Ville de départ') }}
{{ form_row(form.villes) }}
{{ form_label(form.hor_arrivee,"Heure d'arrivée") }}
{{ form_widget(form.hor_arrivee) }}
{{ form_label(form.villes,"Ville d'arrivée") }}
{{ form_widget(form.villes) }}
</div>
<div class="col-lg-6">
{{ form_label(form.prix,'Prix') }}
{{ form_widget(form.prix) }}
{{ form_label(form.reduc,'possède une réduction ?') }}
{{ form_widget(form.reduc) }}
{{ form_label(form.nbr_place,'Nombre de place') }}
{{ form_widget(form.nbr_place) }}
</div>
它抛出这个错误
An exception has been thrown during the rendering of a template ("Field "villes" has already been rendered, save the result of previous render call to a variable and output that instead.").
在您的情况下,您必须在 formType 中添加两个字段:villeDepart
& villeArrivee
(就像您对 heure
所做的那样),因为您不希望第一个表单域被第二个表单域覆盖。
在您的映射中,这两个字段将指向相同的 villes
table,但每个字段将具有不同的值。