嘿,我对一个房产有一个简单的评级系统。你给它打个分(满分5星)。模型的定义如下
def Property(models.Model)
# stuff here
def Rating(models.Model)
property = models.ForeignKey(Property)
stars = models.IntegerField()我想做的是获得一个属性,找到所有的评级对象,收集它们,然后从它们那里获得平均的“星级”。
你知道该怎么做吗?
发布于 2010-04-22 17:50:55
您应该使用Aggregation(doc)
from django.db.models import Avg
p = Property.objects.get(...)
stars_average = p.rating_set.aggregate(Avg('stars')).values()[0]不过,我对我的例子有点不确定。
https://stackoverflow.com/questions/2689664
复制相似问题