我有一个包含JSONField以下的Django模型:Django的1.9 JSONField ORDER_BY
class RatebookDataEntry(models.Model):
data = JSONField(blank=True, default=[])
last_update = models.DateTimeField(auto_now=True)
class Meta:
verbose_name_plural = 'Ratebook data entries'
而且数据字段包含此JSON:
{
"annual_mileage": 15000,
"description": "LEON DIESEL SPORT COUPE",
"body_style": "Coupe",
"range_name": "LEON",
"co2_gkm_max": 122,
"manufacturer_name": "SEAT"
}
我可以排序的查询集由一个数据字段?此查询不起作用。
RatebookDataEntry.objects.all().order_by("data__manufacturer_name")
不是我所知道的(在一个queryset上),但是这种向我表明你实际上可能需要一个对象模型来代替“数据”而不是json – Sayse
另外,使用'default = list'而不是'默认= []',否则你最终会在不同的实例之间共享同一个列表。 – Alasdair