想象一下我有以下模型:
class Person(models.Model):
...other stuff...
optional_first_name= models.CharField(max_length=50, blank=True)
我将如何编写一个请求,该请求返回一个最受欢迎的名称数组,按出现的降序排列,它们的计数,同时忽略空名称?
即对于包含 13 个 Leslies、8 个 Andys、3 个 Aprils、1 个 Ron 和 18 个未指定姓名的人的数据库,输出将是:
[('leslie', 13), ('andy', 8), ('april', 3), ('ron', 1)]
我能得到的最接近的是通过执行以下操作:
q= Person.objects.all()
q.query.group_by=['optional_first_name']
q.query.add_count_column()
q.values_list('optional_first_name', flat= True)
但这仍然不是我想要的。