django - 在原始查询集中循环
问题描述
我有 2 个模型:
Item(models.Model):
name = models.CharField(max_length=255)
Image(models.Model):
item = models.ForeignKey(Item, related_name='item_images', on_delete=models.CASCADE)
...
在 Django 中做一个反向 FK 查询(从产品到图像)一个 prefetch_related。通常是使用。
因为在我更喜欢使用 RAW Queryset 的情况下,我有一个包含多个条件和横向连接的更复杂的查询。
最简单的情况:
SELECT *, i.image, FROM item AS t
INNER JOIN image AS i on t.id = i.item_id
考虑到该项目可以有一个或多个图像,我如何检索每个项目的图像。
我使用 raw 是因为我只想获取每个产品的前 3 张图像(以及特定的文件类型)
在prefetch case
,我可以循环item.item_images
,但在这种情况下?
解决方案
推荐阅读
- python - 仅打印 json 文件的特定部分
- oracle - Oracle 12c db_link 使用计数
- python - Python Turtle Collision 帮助和更新分数/生命
- git - 关闭第一个 PR,因为派生分支也有变化
- python - 如何在 python 环境中使用 Fonttools 的 pyftsubset,而不是从命令行
- java - 单击按钮更改图像
- python - 在numpy中正向和反向位扫描
- python-3.x - 是否可以在 Python 3x 中打印一个使用星号的空心盒子
- swift - 后台队列上的同步阻塞方法在主线程上执行
- sql - 如何计算开始日期和结束日期并以下一个开始日期开始每一行