私のモデルでは:
class StudentProfile(models.Model):
# Relational fields
#more fields
sports_assigned = models.ManyToManyField('Sport', through="StudentSportAssociation")
そして私のモデルフォームは次のようになります:
class UpdateStudentForm(ModelForm):
def __init__(self, *args, **kwargs):
super(UpdateStudentForm, self).__init__(*args, **kwargs)
class Meta:
model = StudentProfile
sports_assigned = forms.ModelMultipleChoiceField(queryset=SportWithLevel.objects.all(),
widget=FilteredSelectMultiple("Select", is_stacked=False), required=True)
スルーテーブルは次のとおりです。
class StudentSportAssociation(AbstractBaseModel):
"""
Association of student to a sport and his current level in the sport
"""
sport = models.ForeignKey('Sport')
level = models.ForeignKey('Level')
student = models.ForeignKey('StudentProfile', related_name="sports_with_levels")
# save and all follows
今、私はアクセスする必要があります
StudentSportAssociation
フォームにアクセスしている間、テーブルを「通過」します。現在、Sportモデルから値をフェッチしています。この通常の方法を破り、スルーテーブルから詳細を取得するために何かできることはありますか?