0
在我的模型,我有:如何從django模型表單中的直通模型中獲取數據?
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
「through」表訪問表單時。 現在它從體育模型中獲取值。 可以做任何事情來打破這種正常的方式,並獲得通過表的細節?
你測試過'self.instance'嗎?另外,你想要做什麼? – danihp
這裏的關聯模型是StudentProfile。當我嘗試在表單中使用它(StudentProfile)時,我需要通過StudentProfile中的sports_assigned列獲取通過表(StudentSportAssociation)中的數據。那就是我想在我的模型窗體UpdateStudentForm中使用StudentProfile模型時,在「sports_with_levels」而不是「sports_assigned」中擁有數據。 –