django值不起作用
当我尝试调用包含3个以上字段的值时,它似乎“中断”(即,它不会将重复条目分组在一起) 我的模型是一个具有三个字段的直通模型,2个django值不起作用,django,django-queryset,Django,Django Queryset,当我尝试调用包含3个以上字段的值时,它似乎“中断”(即,它不会将重复条目分组在一起) 我的模型是一个具有三个字段的直通模型,2个ForeignKey和一个DateTimeField ProjectView(models.Model): user = models.ForeignKey(User) project = models.ForeignKey(Project) datetime_created = models.DateTimeField() 我想做: ProjectVie
ForeignKey
和一个DateTimeField
ProjectView(models.Model):
user = models.ForeignKey(User)
project = models.ForeignKey(Project)
datetime_created = models.DateTimeField()
我想做:
ProjectView.objects.filter(datetime_created__gt=yesterday).values('project__id', 'project__title', 'project__thumbnail', 'project__creator_username')
如果我去掉了任何一个值字段,它将它们按相同的项目分组,没有重复项,如果有4个值,它似乎不进行分组。我做错什么了吗?如果你看一下for值,你将看不到分组或区分的保证。如果您需要该功能,则在调用ORM时必须调用.order\u by()
和/或.distinct()
它的工作可能只是SQL生成的一个副作用。如果您想查看SQL,请查看Django调试工具栏group_by()是否在最新版本的Django中工作?它似乎没有实现…它实际上是order__by而不是group_by难道你不能通过关系访问项目对象值吗?像
项目视图.project.id
或项目视图.project.title
?