如何在Django中执行左联接?

时间:2019-11-17 10:19:54

标签: python django django-rest-framework

我在django中有以下两个模型,分别代表帖子和帖子的赞:

class Post(models.Model):
    title = CharField(max_length=200)
    content = TextField()
    num_comments = PositiveIntegerField(default=0)



class Like(models.Model):
    LIKE_CHOICES = [('L', 'Like'), ('D', 'Dislike')]

    user = ForeignKey(User, on_delete=models.CASCADE)
    post = ForeignKey(Post, on_delete=models.CASCADE)
    state = CharField(default='L', max_length=1, choices=LIKE_CHOICES)
    created_at = DateTimeField(auto_now_add=True)
    updated_at = DateTimeField(auto_now=True)

如何在我的视图中执行联接,该联接将获取所有帖子,然后执行联接以获取用户的相似状态,即发送发送每个帖子的请求(如果用户不喜欢或不喜欢,则为无) )?

我认为可能要做的唯一方法是使用select_related(),但由于Post没有引用{ {1}}。

0 个答案:

没有答案