我有一个 Django 查询,我从不同的数据库获取一些信息,我想将其公开给前端:
specifics = PageData.objects.filter(page_id__in=page_ids).values('page_id'). \
annotate(views=Count('page_id')). \
values('views', 'page__title', 'page__content_size')
这又给了我一个字典列表 - 提示是列表(具体)
:
[
{'page__content_size': 19438L,
'page__title': u'Bosch Tassimo Charmy anmeldelse. Positivt: Bryggehastighed. Negativt: Placering af vandtanken. | 96 Grader',
'views': 5},
[…]
{'page__content_size': 19395L,
'page__title': u'Banwood First Go Balance Bike - studiominishop.com',
'views': 1}
]
我希望能够安排每个字典中键的顺序,这意味着按照我提供的所需和特定的顺序。列表中每个元素的顺序始终相同。
有没有办法在 Django 或 Python 中做到这一点?
最佳答案
您可能需要这个:
import collections
OrderedDict dict subclass that remembers the order entries were added
此处的文档:https://docs.python.org/3/library/collections.html#collections.OrderedDict
在这里您可以找到完整的示例:
https://pymotw.com/2/collections/ordereddict.html
d = collections.OrderedDict()
d['a'] = 'A'
d['b'] = 'B'
d['c'] = 'C'
d['d'] = 'D'
d['e'] = 'E'
for k, v in d.items():
print k, v`
希望这有帮助, 再见!
关于python - 在 django 查询集中排列键顺序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44585812/