【发布时间】:2015-03-16 16:08:45
【问题描述】:
我正在尝试根据不区分大小写的外键字段对查询进行排序。 我的模型是:
class Post(models.Model):
title = models.CharField(max_length = 80)
author = models.ForeignKey(User, default = User)
trade_option = models.CharField(max_length= 10)
class Book(models.Model):
book_title = models.CharField(max_length = 60)
post = models.ForeignKey(Post)
我想根据 book_title 字段不区分大小写对我的帖子对象进行排序。
我知道是否要对 Class Post 中的字段进行不区分大小写的排序,我可以这样做:
posts = Post.objects.filter(trade_option= 'buy').extra(select =
{'lower_name' : 'lower( title )'}).order_by('lower_name')
但是,当我尝试使用带有外键 book_title 进行排序的相同技术时:
posts = Post.objects.filter(trade_option= 'buy').extra(select =
{'lower_name' : 'lower( book__book_title )'}).order_by('lower_name')
我收到错误“没有这样的列:book__boot_title”
我想知道我做错了什么。谢谢
【问题讨论】:
标签: django foreign-key-relationship django-queryset