是否可以将Django模板标记值(如lorem)存储在变量中?

2024-09-28 21:30:55 发布

您现在位置:Python中文网/ 问答频道 /正文

我遇到了一个场景,我想在Django3.1模板上显示一个假名。因此,我使用了以下代码:

Name: {% lorem 2 w random %}

然后我意识到我的显示器上有另一个位置,它将包含相同的名称。当然,如果我再次使用相同的代码,那么我会得到随机不同的两个单词

所以我尝试将值存储在一个变量中,这样我就可以有两个完全相同的随机名称。我查看了很多记录,希望每个记录都有随机的名字,所以虽然这不起作用,但这正是我试图尝试的

{% for d in dict %}
    {% with lorem 2 w random as randName %}
        Name: {{ randName }}<br>
        ....<br>
        Name: {{ randName }}<br><br>
    {% endwith %}
{% endfor %}

预期产出:

Name: TEMPORIBUS EXERCITATIONEM
....
Name: TEMPORIBUS EXERCITATIONEM

Name: QUAM PARIATUR
....
Name: QUAM PARIATUR

因为有很多字典条目存在。这不是什么大不了的事,更多的是好奇,更希望更好地理解django框架。是否可以从lorem模板标记中获取值并将其存储为变量

我还尝试创建自定义模板标记:

@register.simple_tag
def setvar(val=None):
  return val

在我的模板上:

{% setvar randName as lorem 2 w random %}

但我得到的错误是,它只需要一个参数


Tags: 代码name标记br名称模板as记录