我有一個包含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