0

我在模板的很大一部分中使用了这段代码:

{% if app.session.hasFlash('error') %}
        <div class="error">
            {{ app.session.flash('error') }}
        </div>
{% endif %}

但是错误这个词正在改变。你能告诉我如何避免代码重复吗?

使用包含或宏,我只能更改 div 类,但是 app.session.flash 中的错误一词呢?这样做是否有意义,或者最好还是这样?

4

1 回答 1

1

您可以将其包含在“with”选项中。例如:

{% include 'AcmeDemoBundle:Tools:flash.html.twig' with {'flash':'error'} %}

然后在 flash.html.twig 中执行:

{% if app.session.hasFlash(flash) %}
        <div class="{{flash}}">
            {{ app.session.flash(flash) }}
        </div>
{% endif %}
于 2012-09-18T12:18:39.210 回答