gpt4 book ai didi

symfony - 无法呈现表单,因为 block 名称数组包含重复项

转载 作者:行者123 更新时间:2023-12-02 04:07:53 26 4
gpt4 key购买 nike

我正在使用 Symfony 3.3.9,当我尝试渲染表单时出现以下错误:

An exception has been thrown during the rendering of a template ("Unable to render the form because the block names array contains duplicates: "_fos_user_registration_form_errors", "user_errors", "user_errors", "fos_user_registration_errors", "form_errors".").

enter image description here

预先感谢您的帮助!

编辑2017年9月17日给你:

public function indexAction()
{
/** @var $formFactory FactoryInterface */
$formFactory = $this->get('fos_user.registration.form.factory');

$form = $formFactory->createForm();

return $this->render('AppTMMainBundle:Default:index.html.twig', array(
'form' => $form->createView(),
));
}

我的 Twig :

{{ form_start(form, {'method': 'post', 'action': path('fos_user_registration_register')}) }}
<div class="card-content">
<h3 class="text-center title" style="color: #3C4858;margin:10px 0;">Inscription</h3>
<div class="social text-center">
<a class="btn btn-just-icon btn-round btn-facebook" href="{{ path('hwi_oauth_service_redirect',{'service': 'facebook'}) }}">
<i class="fa fa-facebook"> </i>
</a>
<a class="btn btn-just-icon btn-round btn-twitter" href="{{ path('hwi_oauth_service_redirect',{'service': 'twitter'}) }}">
<i class="fa fa-twitter"></i>
</a>
<a class="btn btn-just-icon btn-round btn-google" href="{{ path('hwi_oauth_service_redirect',{'service': 'google'}) }}">
<i class="fa fa-google-plus"></i>
</a>
</div>
<p class="description text-center">Ou de façon plus classique</p>
<div class="row">
<div class="col-xs-6">
{{ form_label(form.firstname) }}
{{ form_widget(form.firstname) }}
</div>
<div class="col-xs-6">
{{ form_label(form.lastname) }}
{{ form_widget(form.lastname) }}
</div>
</div>
<div class="row">
<div class="col-xs-12">
{{ form_label(form.email) }}
{{ form_widget(form.email) }}
</div>
</div>
<div class="row">
<div class="col-xs-6">
{{ form_widget(form.plainPassword.first, {'attr': {'class': 'form-control', 'placeholder': 'form.password'}}) }}
</div>
<div class="col-xs-6">
{{ form_widget(form.plainPassword.second, {'attr': {'class': 'form-control', 'placeholder': 'form.password_confirmation'}}) }}
</div>
</div>

<!-- If you want to add a checkbox to this form, uncomment this code -->
<div class="input-group">
<div class="checkbox">
<label>
<input type="checkbox" name="optionsCheckboxes" checked="">
{{ 'index.proceed.agree'|trans }} <a href="{{ path('tm_main_policies_terms') }}">{{ 'index.proceed.cgu'|trans }}</a>.
</label>
</div>
</div>
<div class="footer text-center">
<input type="submit" class="btn btn-primary btn-round" value="{{ 'index.action.subscribe'|trans }}">
</div>
</div>
{{ form_end(form) }}

最佳答案

对于任何有此类异常(exception)的人:

您可能不应该扩展表单类型,而应该创建自己的表单类型并使用 getParent 来继承该行为。如果您的类名与其他类型相同(不包括命名空间)您必须重写 AbstractType 中的 getBlockPrefix。

AbstractType 中的 getBlockPrefix 方法使用 fqcn(类名)的最后一部分,您可能会有重复的 block 名称。

关于symfony - 无法呈现表单,因为 block 名称数组包含重复项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46257883/

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