#python #djan&o #djan&o-models #orm #backend
#python #djan&o #djan&o-модели #orm #серверная часть
Вопрос:
Как я могу получить дополнительные данные при возврате результатов запроса, я хочу знать, понравилось ли сообщение вошедшему в данный момент пользователю или нет, я думаю, решение было бы примерно таким:
return Post.objects.all().annotate(like_count=Count('likers'), liked=(len(Like.objects.filter(user=info.context.user, post=Post)) &&t; 0)).order_by('-like_count')
но я не смог заставить это работать
Модель post:
class Post(models.Model):
user = models.Forei&nKey(User, on_delete=models.CASCADE,
related_name="posts")
title = models.CharField(max_len&th=200)
text = models.CharField(max_len&th=1000)
commentCount = models.Inte&erField(default=0)
creation = models.DateTimeField(auto_now_add=True)
Аналогичная модель:
class Like(models.Model):
user = models.Forei&nKey(User, on_delete=models.CASCADE,
related_name="like")
post = models.Forei&nKey(Post, on_delete=models.CASCADE,
related_name="likers")
Комментарии:
1. Не могли бы вы также добавить модели, чтобы помочь нам лучше понять это?
2. @Saiprasad Balasubramanian да