我正在尝试在我正在编写的Django模板中运行一些if语句。这是代码:
{% for object in managers %}
{{ request.user.username }}
{{ object.manager }}
{% if request.user.username == object.manager %}
You are on the list!
{% endif %}
{% endfor %}
当我作为objects.manager成员的用户登录时运行此代码时,我看到以下内容:
的用户名 用户名
但if语句中没有任何内容出现。如果两个值都相同,为什么它不起作用?我知道这不是最优雅的方式,但目前我只能访问模板文件而且我正在尝试快速获取内容:)
谢谢!
答案 0 :(得分:2)
您的object.manager是foreignkey(int),您的request.user.username是(str)。为了使它同等使用两个外键。
{% if request.user == object.manager %}
您也可以使用request.user.username。例如:
{% if request.user.username == object.manager.username %}
模式:
(int) == (int)
('str') == ('str')
(FK or PK) == (int)
(FK or PK) == (FK or PK)