我有Django的一個模型是這樣的:查詢一個多對多場與通過在Django
class Classification(models.Model):
name = models.CharField(choices=class_choices)
...
class Activity(models.Model):
name = models.CharField(max_length=300)
fee = models.ManyToManyField(Classification, through='Fee')
...
class Fee(models.Model):
activity = models.ForeignKey(Activity)
class = models.ForeignKey(Classification)
early_fee = models.IntegerField(decimal_places=2, max_digits=10)
regular_fee = models.IntegerField(decimal_places=2, max_digits=10)
的想法是,將有一組與每個活動和分類對相關費用。分類就像學生,工作人員等
我知道那部分是正確的。
然後在我的申請,我查詢了一組活動:
activities = Activity.objects.filter(...)
它返回的活動列表。我需要在我的模板中顯示活動費用清單。事情是這樣的:
Activity Name
Student Early Price - $4
Student Regular Price - $5
Staff Early Price - $6
Staff Regular Price - $8
但我不知道一個簡單的方法,而不費的具體GET查詢對象爲每個活動/類對得到這個信息。
我希望這會工作:
activity.fee.all()
但是,這只是返回分類對象。有沒有辦法通過我已經查詢的活動獲得對的費用對象數據?
還是我這樣做完全錯了?