我如何在Django模板标签中使用模板上下文变量的值? [重复]
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了我如何在Django模板标签中使用模板上下文变量的值? [重复]相关的知识,希望对你有一定的参考价值。
这个问题在这里已有答案:
在Django中,我看过trans
标签,将翻译字符串放在模板中很有用。
{% trans 'Rishikesh' %}
但我想用动态值代替我的视图函数传递的'Rishikesh'
。
让我假设我的名为index
的视图函数如下。
def index(request):
return render(request, "index.html", {"username": "Rishikesh"})
我的问题是,我想在我的模板中使用username
的值作为trans
标签的值,如下所示。
{% trans "{{username}}" %}
我认为,它应该工作,但它不起作用?
如果您知道任何相同的方法,请帮助我。
答案
尝试使用没有引号的变量,没有像这样的大括号:
{% trans username %}
另一答案
您应该在视图中进行翻译
from django.utils.translation import ugettext as _
def index(request):
return render(request, "index.html", {"username": _("Rishikesh")})
在你的模板中只渲染变量:
{{ username }}
模板翻译仅用于静态,不要在模板中放置太多逻辑,在一段时间内很难遵循。
以上是关于我如何在Django模板标签中使用模板上下文变量的值? [重复]的主要内容,如果未能解决你的问题,请参考以下文章
django 的模板标签“include”如何与 None 一起使用
如何在 Django 2.1 中的模板内的 for 循环内设置变量?