Django - 在 if 语句中使用模板标签
Django - use template tags in if statement
我看到了类似的问题,但是 none 解决了我的问题。
我有一个像这样的简单模板标签:
@register.simple_tag
def liked_by_user(post_id, user):
try:
PostModel.objects.get(pk=post_id).like_set.get(user=user)
return True
except:
return False
我想在这样的 if 语句中使用它:
{% if liked_by_user post.pk request.user %}
doing somethin...
{% else %}
doing somethin...
{% endif %}
我能做什么?
我会像这样设置你的模板:
{% liked_by_user "post_id" "request.user" as liked_by_user_flag %}
{% if liked_by_user_flag %}
doing somethin...
{% else %}
doing somethin...
{% endif %}
但是,这种直觉上感觉不像是模板标签这种情况......但我还不能 100% 确定你的用例来自你的问题.
我看到了类似的问题,但是 none 解决了我的问题。
我有一个像这样的简单模板标签:
@register.simple_tag
def liked_by_user(post_id, user):
try:
PostModel.objects.get(pk=post_id).like_set.get(user=user)
return True
except:
return False
我想在这样的 if 语句中使用它:
{% if liked_by_user post.pk request.user %}
doing somethin...
{% else %}
doing somethin...
{% endif %}
我能做什么?
我会像这样设置你的模板:
{% liked_by_user "post_id" "request.user" as liked_by_user_flag %}
{% if liked_by_user_flag %}
doing somethin...
{% else %}
doing somethin...
{% endif %}
但是,这种直觉上感觉不像是模板标签这种情况......但我还不能 100% 确定你的用例来自你的问题.