【发布时间】:2019-01-19 17:48:54
【问题描述】:
我正在尝试为以下模型结构找到最有效的方法(尽可能少的数据库查询)。
然后我想在我的模板中传递来自所有 3 个模型的所有数据,因为我必须显示发布数据以及遍历 cmets 以创建 cmets 列表并显示不同 cmets 的所有附件。
class Post(BaseModel):
user = models.ForeignKey('User', blank=True, null=True,
title = models.CharField(max_length=128)
content = models.TextField()
class Comment(BaseModel):
post = models.ForeignKey('Post', on_delete=models.CASCADE)
user = models.ForeignKey('User', on_delete=models.SET_NULL)
text = models.TextField()
class CommentAttachment(BaseModel):
comment = models.ForeignKey('Comment', on_delete=models.CASCADE)
name = models.CharField(max_length=128)
我应该从CommentAttachment 方向获取所有数据(意思是获取所有CommentAttachments,其中comment__post__id 是帖子ID,然后使用select_related 获取所有其他数据)还是有其他方法可以从@987654326 开始@模特?
【问题讨论】:
-
“从 CommentAttachment 方向获取所有数据”我不清楚。你试过什么了 ?如果您可以粘贴当前的视图代码或至少是伪代码,将会有所帮助。
标签: python django django-queryset