我在postgresql尝试使用booleanfield时看到了奇怪的输出。
我有一个布尔字段,默认值为false 我正在使用order_by(-thebooleanfield)和我看到的True值首先是我所期望的,但是False值首先出现。
我需要切换到不同的类型吗? 或者在postgresql中有一个正确的order_by booleanfield方法吗?
10倍
答案 0 :(得分:1)
Django按存储在底层数据库中的值进行排序。我从未在Django文档中找到任何官方解释,但有一段时间有一张Django票据解释了它:
https://code.djangoproject.com/ticket/19726
基本上,开发人员将其标记为wontfix,因为在数据库后端之间实现一致的行为会使它们更脆弱。
确保一致行为的最佳方法可能是对客户端的值进行排序。