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