5
这真是奇怪,更新的树枝模板后,事情发生了:Symfony2的形式给出了捕错误关于FormView控件
控制器部
$registration = new Registration();
$form = $this->createForm(new RegistrationType(), $registration, array(
'action' => $this->generateUrl('account_create'),
));
return $this->render(
'AcmeCommonBundle:Security:register.html.twig',
array(
'form' => $form->createView(),
'contentBackColor' => 'canvasGreen'
)
);
模板部分
{{ form_start(form) }}
{{ form_errors(form) }}
<p>All Fields Are Required</p>
<div class="form-row">
{{ form_label(form.firstname, "First Name") }}
{{ form_widget(form.firstname) }}
<div class="clear-fix"></div>
</div>
<div class="form-errors-row">
{{ form_errors(form.firstname) }}
</div>
<div class="form-row">
{{ form_label(form.lastname, "Last Name") }}
{{ form_widget(form.lastname) }}
<div class="clear-fix"></div>
</div>
<div class="form-errors-row">
{{ form_errors(form.lastname) }}
</div>
<div class="form-row">
{{ form_label(form.username, "Username") }}
{{ form_widget(form.username) }}
<div class="clear-fix"></div>
</div>
<div class="form-errors-row">
{{ form_errors(form.username) }}
</div>
<div class="form-row">
{{ form_label(form.email, "Email") }}
{{ form_widget(form.email) }}
<div class="clear-fix"></div>
</div>
<div class="form-errors-row">
{{ form_errors(form.email) }}
</div>
<div class="form-row">
{{ form_label(form.password, "Password") }}
{{ form_widget(form.password) }}
<div class="clear-fix"></div>
</div>
<div class="form-errors-row">
{{ form_errors(form.password) }}
</div>
<div class="form-row">
{{ form_label(form.confirm, "Confirm Password") }}
{{ form_widget(form.confirm) }}
<div class="clear-fix"></div>
</div>
<div class="form-errors-row">
{{ form_errors(form.confirm) }}
</div>
<div class="form-row">
{{ form_label(form.terms, "Terms & Conditions") }}
{{ form_widget(form.terms) }}
<div class="clear-fix"></div>
</div>
<div class="form-errors-row">
{{ form_errors(form.terms) }}
</div>
{{ form_end(form) }}
的错误
Argument 1 passed to Symfony\Component\Form\FormRenderer::searchAndRenderBlock() must be an instance of Symfony\Component\Form\FormView, null given
正如你可以清楚地看到,我确实呈现FormView控件,而事实上,它为空将导致我认为,这是关系到RegistrationType()类,但没有发生变化,因此,只有在模板来呈现?
你可能有一些添加到导致要针对以前没有做的形式进行调用的枝条。你能告诉我们你对模板做了什么改变吗? –
我真的想到了,并在下面回答了我自己的问题。原来这是复合表单类型的问题。 – JRL