简介:我有 3 个模型用户
、帖子
、组
。用户可以发布帖子,但每个帖子必须属于一个组。用户必须从现有的群组中选择他们的帖子。用户无法添加、删除、更新组。
此外:
当用户单击某个组时,他们可以成为组的成员。他们看到该组中的所有帖子。
我想要什么当用户进入主页时,他们会看到自上次登录以来添加的帖子
我的模型
class Post(models.Model):
user = models.ForeignKey(User, related_name='posts')
group = models.ForeignKey(Group, related_name='posts')
title = models.CharField(max_length=250, unique=True)
message = models.TextField()
created_at = models.DateTimeField(auto_now=True)
我的观点
class Homepage(TemplateView):
template_name = 'home.html'
def get_context_data(self, **kwargs):
context = super(Homepage, self).get_context_data(**kwargs)
context['object_list'] = Group.objects.all()
context['post_list'] = Post.objects.order_by("-created_at")
#What am I doing wrong in the below code
if self.request.user.is_authenticated():
new_posts = Post.objects.filter(created_at__gt(self.request.user.last_login))
context['new_posts'] = new_posts.count()
return context
在我的模板中,我有
<div class="list-group">
{% for group in object_list %}
{{group.name}}
{% if new_posts > 0 %}
{{new_posts}} new
{% endfor %}
</div>
NameError: name 'created_at__gt' is not defined
最佳答案
该错误是因为您错过了等于符号,
new_posts = Post.objects.filter(created_at__gt <b>=</b> self.request.user.last_login)
<b>^^^ here</b>
关于django - 如何检查自用户上次登录 Django 以来的新帖子,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53799296/