我试图覆盖默认的Symfony2表单来实现下面的代码,这样我就可以通过传递变量来关闭和关闭html5验证。
html5validation.toggle.html.twig
{% extends 'form_div_layout.html.twig' %}
{% block form_start -%}
{% if html5validation %}
{{ parent() }}
{% else %}
{{ parent
(
companyform, {'attr': {'novalidate': 'novalidate'}}
)
}}
{% endif %}
{%- endblock form_start %}
index.html.twig
form_theme company_form 'AcmeDemoBundle:html5validation.toggle.html.twig'
form(companyform)
在我的控制器中我有:
$this->render('AcmeDemoBundle:Index:index.html.twig', array('html5validation' => false, 'companyform' => ...
如果我在dump(html5validation)
内尝试index.html.twig
,我会bool(false)
。
但是当我尝试包含form_theme company_form AcmeDemoBundle:html5validation.toggle.html.twig
我收到错误:
变量" html5validation"不存在
控制器变量是否可以在主题中使用?