gpt4 book ai didi

Django:不同的外键

转载 作者:行者123 更新时间:2023-12-04 01:35:38 26 4
gpt4 key购买 nike

class Log:
project = ForeignKey(Project)
msg = CharField(...)
date = DateField(...)

我想选择四个最近的日志条目,其中每个日志条目必须有一个唯一的项目外键。我已经在谷歌搜索上尝试了解决方案,但没有一个有效,django 文档也不太适合查找。

我试过这样的东西:
Log.objects.all().distinct('project')[:4]
Log.objects.values('project').distinct()[:4]
Log.objects.values_list('project').distinct('project')[:4]

但这要么不返回任何内容,要么返回同一项目的日志条目..

任何帮助,将不胜感激!

最佳答案

查询不是这样工作的——无论是在 Django 的 ORM 中还是在底层 SQL 中。如果要获取唯一ID,则只能查询ID。所以你需要做两个查询来获取实际的日志条目。就像是:

id_list = Log.objects.order_by('-date').values_list('project_id').distinct()[:4]
entries = Log.objects.filter(id__in=id_list)

关于Django:不同的外键,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4935921/

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