0
我有以下型号:Django的ORM的查询,而不是使用字典
class ProjectUser(models.Model):
categories = models.ManyToManyField('UserCategory', blank=True, null=True)
user_id = models.PositiveIntegerField(db_index=True)
name = models.CharField(max_length=80)
actual_rank = models.FloatField(default=0)
class UserCategory(models.Model):
name = models.CharField(max_length=100)
我想什么做的就是类别名称和次数,他们出现在用户除以长度的另一个对象。
我正在创建一个类别字典{'category':ocurrences},然后对它进行迭代,并将出现次数除以一个数字以获得类别等级。
也许这是一个很好的方法来做到这一点,但我想知道它是否可以直接使用一些queryset方法来完成。我在很多地方都做过类似的事情,并且寻找更好更成功的方法来解决这个问题会很好。
如何创建另一个将用于对UserCategory进行排序的Model类,可能使用ForeignKey到UserCategory和IntegerField来存储发生次数或排名次数,只要保存ProjectUser就会更新它。 – machaku