你如何在 Django 聚合中动态分配别名?
How do you dynamically assign aliases in a django aggregate?
我正在试用 django aggregates。我正在动态调用这些聚合,并且需要即时分配和别名它们。我希望生成的别名是原始字段的名称。
例如:
from django.db import models as aggregator
field = 'person'
reducer = getattr(aggregator, 'Sum')
query_set.aggregate(field=reducer(field))
我期待这个:
{'person':12}
但是得到这个:
{'field':12}
在这种情况下,有没有办法动态分配别名?
您可以使用 unpack
语法并传递字典:
query_set.aggregate(**{field:reducer(field)})
我正在试用 django aggregates。我正在动态调用这些聚合,并且需要即时分配和别名它们。我希望生成的别名是原始字段的名称。
例如:
from django.db import models as aggregator
field = 'person'
reducer = getattr(aggregator, 'Sum')
query_set.aggregate(field=reducer(field))
我期待这个:
{'person':12}
但是得到这个:
{'field':12}
在这种情况下,有没有办法动态分配别名?
您可以使用 unpack
语法并传递字典:
query_set.aggregate(**{field:reducer(field)})