Вступление: У меня есть 3 модели user
, post
, group
.Пользователь может создавать сообщения, однако каждое сообщение должно принадлежать группе.Пользователи должны выбирать из существующих групп для своих сообщений.Пользователи не могут добавлять, удалять, обновлять группы.
Более того:
Пользователи могут становиться членами групп и при нажатии на определенную группу.Они видят все сообщения в этой группе.
Что я хочу Когда пользователи заходят на домашнюю страницу, они видят записи, которые были добавлены с момента последнего входа в систему
Мои модели
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: имя 'creat_at__gt' не определено