我正在使用 django 评论框架,当我列出评论时,我想包含一些存储在 auth_user 中的信息。但是,我发现我需要对每条评论进行额外查询才能获取用户信息。
我在拉评论时尝试使用 select_related() ,但这没有帮助。
是否有它没有加入 auth_user 表的原因,有没有办法强制它加入?
我正在使用 django 评论框架,当我列出评论时,我想包含一些存储在 auth_user 中的信息。但是,我发现我需要对每条评论进行额外查询才能获取用户信息。
我在拉评论时尝试使用 select_related() ,但这没有帮助。
是否有它没有加入 auth_user 表的原因,有没有办法强制它加入?
您可以获取所有在您的页面上有评论的用户,然后将它们转储到字典中。您可以在遍历评论时从字典中提取用户数据。
这是原始 django 评论模型的片段:
user = models.ForeignKey(User, verbose_name=_('user'),
blank=True, null=True, related_name="%(class)s_comments")
user_name = models.CharField(_("user's name"), max_length=50, blank=True)
user_email = models.EmailField(_("user's email address"), blank=True)
user_url = models.URLField(_("user's URL"), blank=True)
因此您可以comment.user
用来获取用户和/或user.users_comments
获取用户的所有评论:-)