mrm*_*vin 11 django foreign-keys distinct
class Log:
project = ForeignKey(Project)
msg = CharField(...)
date = DateField(...)
Run Code Online (Sandbox Code Playgroud)
我想选择四个最新的日志条目,其中每个日志条目必须具有唯一的项目外键.我在谷歌搜索上尝试了解决方案,但它们都不起作用,而django文档对于查找来说并不是那么好.
我试过像这样的东西:
Log.objects.all().distinct('project')[:4]
Log.objects.values('project').distinct()[:4]
Log.objects.values_list('project').distinct('project')[:4]
Run Code Online (Sandbox Code Playgroud)
但是要么返回任何内容,要么返回同一项目的Log条目.
任何帮助,将不胜感激!
Dan*_*man 20
查询不能像那样工作 - 无论是在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)
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
8210 次 |
| 最近记录: |