Django在列表中检查用户

时间:2018-12-04 19:44:16

标签: python django templates

我正在创建一个django博客应用,用户可以在其中向文章添加评论。 我想在用户发表评论后删除发布按钮。

我有一个名为article的模型和另一个名为comment的模型(对本文使用ForeignKey)

我尝试了{% if any request.user in article.comment_set.all},但是没有用。我试图遍历article.comment_set.all,但是那也不起作用。

模板中是否有执行此操作的方法?

1 个答案:

答案 0 :(得分:1)

为什么不在模板中执行此操作,而不是在模板中执行此操作并通过上下文发送它。例如:

def view(request):
    ...
    user_exists = article.comment_set.filter(user=request.user).exists()
    context = {}
    context['user_exists'] = user_exists
    return render(request, 'template.html', context)

在模板中:

{% if user_exists %}

// do something

{% else %}

// do something else

{% endif %}