jinja块是否具有默认参数

时间:2016-03-07 11:33:38

标签: html jinja2

如果没有填充块,有没有办法创建默认条目?

我的模板上有一个按钮,上面写着创建

myTemplate.html:

<a href="#" class="btn">create</a>

到目前为止,使用此模板的所有页面都使用了测试 create ,但现在我希望能够从我的页面编辑该文本。

通常我会在模板中添加一个块以供页面覆盖:

myTemplate.html:

<a href="#" class="btn">{% block createString %}{% endblock %}</a>

myPage.html下:

{% extends "myTemplate.html" %}
{% block createString %}next{% endblock %}

但是,为此,我希望有类似默认值的内容,这样如果我在myPage中没有任何createString块,则会使用默认字符串。

类似的东西:

myTemplate.html:

<a href="#" class="btn">{% block createString %}{% default %}create
                        {% endblock %}</a>

myPage.html 中,按钮会显示 next ,而在扩展 myTemplate.html 的其他文件中按钮将显示创建

1 个答案:

答案 0 :(得分:1)

这比我想象的要简单得多......

因此,在模板中,我只需在中编写“默认”代码。

myTemplate.html:

<a href="#" class="btn">{% block createString %}create{% endblock %}</a>

因此,在我想要创建文本的页面中,我只是忽略了 createString 块,而在我要更改文本的页面中,我覆盖了模板块,就像以下

myPage.html下:

{% extends "myTemplate.html" %}
{% block createString %}next{% endblock %}