2

使用 google app engine 和 Django non-rel,我正在查询电影列表并希望按字母顺序排列它们。

movies = Movie.objects.all().order_by("title")

问题在于任何不以大写字符开头的标题都没有遵循相同的排序模式。

因此,如果查询这些电影并将它们排序返回,则“iRobot”不会介于蝙蝠侠和 Zoolander 之间:

  1. 世界末日
  2. 蝙蝠侠
  3. 动物园人
  4. 我是机器人

如何让他们执行不区分大小写的 order_by?

谢谢

4

2 回答 2

4

您需要非规范化:存储一个包含小写版本标题的单独属性,然后对其进行排序。

于 2010-10-26T19:29:12.010 回答
1

也许您可以使用计算属性返回属性的小写版本?

https://developers.google.com/appengine/docs/python/ndb/properties#computed

于 2013-01-30T18:25:38.887 回答