我有 3 個模型:
class ForumTopic(models.Model):
author = models.ForeignKey('auth.User', on_delete=models.CASCADE)
title = models.CharField(max_length=100)
class ForumMessage(models.Model):
topic = models.ForeignKey(ForumTopic, on_delete=models.CASCADE)
author = models.ForeignKey('auth.User', on_delete=models.CASCADE)
class ForumMessageVote(models.Model):
user = models.ForeignKey('auth.User', on_delete=models.CASCADE)
message = models.ForeignKey(ForumMessage, on_delete=models.CASCADE)
vote = models.IntegerField(default=0)
我想為特定的ForumTopic選擇所有ForumMessage并附加到此查詢的結果ForumMessageVote由特定用戶和當前ForumMessage過濾。
我怎么能做到這一點?
uj5u.com熱心網友回復:
我認為你需要過濾ForumMessageVote物件
您需要的資訊將通過查詢集的結果提供
ForumMessageVote.objects.filter(
user = the_selected_user,
message__topic = the_selected_topic
).select_related(
'message', 'message__topic' )
如果您已經知道用戶或主題的 ID,例如通過 URL,那么您可以過濾user_id=uid或message__topic_id=tid
uj5u.com熱心網友回復:
ForumMessages= ForumMessage.objects.filter(topic="specificTopic")
ForumMessageVotes=ForumMessageVote.object.filter(message__in=ForumMessages)
轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/315080.html
上一篇:在AbstractBaseUserDjango中使用電話號碼欄位
下一篇:將Pytest作為子行程呼叫
