Django:在模板中使用ugettext_lazy

时间:2017-10-10 18:58:41

标签: python django python-2.7 python-3.x django-templates

您好我想知道我是否可以在django的模板中使用ugettext_lazy as _因为我想要替换{% trans %}{% blocktrans %}的代码,因为我不想发消息。

我想做这样的事情:

<h1>_('hello')</h1>

而不是:

<h1>{% trans 'hello' %}</h1>

由于

2 个答案:

答案 0 :(得分:0)

无法从带有任何参数的模板调用任何函数。你必须写tag or filter,但我建议你坚持使用trans块。

答案 1 :(得分:0)

我想说的是<h1>_('hello')</h1>这个功能在django模板中是不可能的。

但是我们还有另一种方法可以使用自定义模板标签来支持您在模板中翻译字符串的方式

{% some_tag _("Page not found") value|yesno:_("yes,no") %}

以上添加的字符串将在django中用作翻译。

阅读django文档https://docs.djangoproject.com/en/1.11/topics/i18n/translation/#string-literals-passed-to-tags-and-filters