复制品:
Using a Django custom model method property in order_by()
我有两个模型;一个模型存储帖子,另一个模型存储对这些帖子所做的投票,使用foreignkey字段进行关联。每个投票都存储为单独的记录,因为我需要跟踪投票的用户和日期时间。
我创建了一个助手函数,它使用django 1.1聚合和函数计算所有投票。
class Post(models.Model):
...some fields...
def tally(self):
return self.vote_set.all().aggregate(Sum('value'))['value__sum'] or 0
class Vote(models.Model):
post = models.ForeignKey(Post)
value = models.IntegerField()
...some fields...
我需要做的一个查询是一次性的
order_by
理货的然而:
Post.objects.all().order_by('tally')
生成以下模板错误:
呈现时捕获到异常:
无法将关键字“tally”解析为
字段。选择是:创建日期,
description,id,is_active,name,
相关,slug,用户,投票
它有任何方法可以得到
order_by()
函数接受可调用?