Django 按传递给值的顺序显示属性
Django display properties in the order as passed to values
我使用 Django 框架并尝试 运行 如下查询;
ComDiseases.objects.filter(bs_date='12/2016', district=2).values('com_disease', 'male', 'female', 'children', 'elderly')
我得到的结果是:
[{'elderly': 8, 'com_disease': u'Dengue', 'male': 5, 'children': 7, 'female': 6}, {'elderly': 8, 'com_disease': u'Diarrhea', 'male': 5, 'children': 7, 'female': 6}]
但我希望我的结果显示属性的顺序与传递给值的顺序相同,这意味着;
[{'com_disease': u'Dengue', 'male': 5, 'female': 6, 'children': 7, 'elderly': 8}, {'com_disease': u'Diarrhea', 'male': 5, 'female': 6, 'children': 7, 'elderly': 8}]
有什么办法可以实现吗,我阅读了文档和其他帖子,但找不到任何成功的答案。
感谢您对此的帮助。
字典是无序的。
您可以使用 values_list
,其中 returns 数据作为列表而不是字典;你不会得到列名。
我使用 Django 框架并尝试 运行 如下查询;
ComDiseases.objects.filter(bs_date='12/2016', district=2).values('com_disease', 'male', 'female', 'children', 'elderly')
我得到的结果是:
[{'elderly': 8, 'com_disease': u'Dengue', 'male': 5, 'children': 7, 'female': 6}, {'elderly': 8, 'com_disease': u'Diarrhea', 'male': 5, 'children': 7, 'female': 6}]
但我希望我的结果显示属性的顺序与传递给值的顺序相同,这意味着;
[{'com_disease': u'Dengue', 'male': 5, 'female': 6, 'children': 7, 'elderly': 8}, {'com_disease': u'Diarrhea', 'male': 5, 'female': 6, 'children': 7, 'elderly': 8}]
有什么办法可以实现吗,我阅读了文档和其他帖子,但找不到任何成功的答案。
感谢您对此的帮助。
字典是无序的。
您可以使用 values_list
,其中 returns 数据作为列表而不是字典;你不会得到列名。