我有一个模型,它有一个叫做user的属性。
user = models.OneToOneField(User)
然后,我想order_by user.first_name对我的观点进行排序。例如:
group = Generus.objects.filter(klp='Marbar').order_by('jenis_kelamin','user.first_name')
如果只是order_by('jenis_kelamin','用户'),而不是order_by('jenis_kelamin','user.first_name'),它就可以工作。
有什么解决办法吗?
为了在filter
中访问attr,您需要使用double underscore
而不是点。喜欢'user__first_name'
尝试做:
group = Generus.objects.filter(klp='Marbar').order_by('jenis_kelamin','user__first_name')