我想给我的表单一个自定义属性“数据遵守”使用Twig。例如,我希望将我的表单呈现为:
<form method="post" action="" novalidate="novalidate" data-abide>然而,我能做的最接近的是:
{{ form_start(form, {
'attr': {
'novalidate': 'novalidate',
'data-abide': null
}
})
}}这使:
<form method="post" action="" novalidate="novalidate" data-abide="">有什么办法可以克服这个问题吗?
发布于 2013-11-26 23:16:44
是的,您可以覆盖默认的start_form块,因为默认情况下,所有属性都具有key="value“格式:
<form method="{{ form_method|lower }}" action="{{ action }}"{% for attrname, attrvalue in attr %} {{ attrname }}="{{ attrvalue }}"{% endfor %}{% if multipart %} enctype="multipart/form-data"{% endif %}>此代码适用于我:
{% block form_start %}
{% spaceless %}
{% set method = method|upper %}
{% if method in ["GET", "POST"] %}
{% set form_method = method %}
{% else %}
{% set form_method = "POST" %}
{% endif %}
<form method="{{ form_method|lower }}" action="{{ action }}" {% for attrname, attrvalue in attr %} {% if attrvalue %}{{ attrname }}="{{ attrvalue }}"{% else %}{{ attrname }}{% endif %} {% endfor %}{% if multipart %} enctype="multipart/form-data"{% endif %}>
{% if form_method != method %}
<input type="hidden" name="_method" value="{{ method }}" />
{% endif %}
{% endspaceless %}
{% endblock form_start %}此代码非常重要:
{% for attrname, attrvalue in attr %} {% if attrvalue %}{{ attrname }}="{{ attrvalue }}"{% else %}{{ attrname }}{% endif %} {% endfor %}https://stackoverflow.com/questions/20227144
复制相似问题