gpt4 book ai didi

python - Django 查询扩展的 USER 表

转载 作者:行者123 更新时间:2023-11-28 23:38:33 25 4
gpt4 key购买 nike

我有一个配置文件表,其中包含用户的外键。

class Profile(models.Model):
created = models.DateTimeField(auto_now_add=True)
updated = models.DateTimeField(auto_now=True)
image = models.CharField(max_length=100)
user = models.ForeignKey(User)

我还有一个包含用户外键的 COMMENT 表。

class Comment(models.Model):
created = models.DateTimeField(auto_now_add=True)
updated = models.DateTimeField(auto_now=True)
content = models.TextField()
user = models.ForeignKey(User)

我想查询 COMMENT 表,还想获取 PROFILE 表中的用户图像。我怎样才能在 Django 中以最有效的方式查询这个?

谢谢

最佳答案

如果您可以在 Profile 模型上将 ForeignKey 更改为 OneToOneField,那么您可以这样做,

Comment.objects.all().select_related('user__profile')

上面的那个在执行查询时选择了额外的相关对象数据。这是一个性能提升器,它会导致单个更复杂的查询,但意味着以后使用外键关系将不需要数据库查询。

否则你可以这样获取

for comment in Comment.objects.all():
print comment.user.profile_set.all()[0].image

关于python - Django 查询扩展的 USER 表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35077564/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com