symfony - 如何将变量传递给form_theme?

标签 symfony twig

我想为我的表单设置主题,以便字段的标签显示当前区域设置,例如

Name (en) :

所以我想像这样重写 block generic_label :

{# form_theme.html.twig #}

{% block generic_label %}
{% spaceless %}
    {% if required %}
        {% set attr = attr|merge({'class': attr.class|default('') ~ ' required'}) %}
    {% endif %}
    <label{% for attrname,attrvalue in attr %} {{attrname}}="{{attrvalue}}"{% endfor %}>{{ label|trans }} (app.session.locale)</label>
{% endspaceless %}
{% endblock %}

并将其导入我的模板中:

{% form_theme options 'myBundle:Object:form_theme.html.twig' %}

但 app 变量在表单模板中不可访问。 如何将变量传递给表单主题?

最佳答案

在当前版本的 twig(2016 年)中这是可能的。 在您的模板中使用以下内容:

{{ form_row(form.content, {'testvar' : 'this is test variable'}) }}

然后,在您的主题文件中,只需使用:

{{testvar}}

当然,您将使用您需要的字段名称,而不是 form.content 。 干杯, 克里斯

关于symfony - 如何将变量传递给form_theme?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8763952/

相关文章:

symfony - Assetic dump 在我的 Symfony 应用程序中找不到 uglifycss

symfony - 在 src/之外创建一个 Bundle

symfony - 使用 Symfony 中的 Twig 获取从 MySQL 检索的每条记录的行号

templates - Symfony 加载电子邮件的 Twig 模板

php - Doctrine2 存储库、多对多关联和 Twig 模板 : best practices

php - 自定义错误模板引发 fatal error

php - symfony2中的全局变量在php模板中使用

php - Symfony2,如何跳过在 Twig 模板中循环打印重复值?

html - symfony2 twig 白名单 html 标签

forms - 在 Twig 中设置 Symfony 2 表单域的默认值