Я пытаюсь создать систему управления результатами с помощью django. А для хранения оценок субъектов я использую встроенный набор форм django. Проблема в том, что пользователь должен вручную выбрать тему из раскрывающегося списка, который является Select Field в django, и я думаю, что это будет не лучший выбор. Поэтому я решил изначально установить SelectField для этого иностранного поля. Но начальное значение всегда устанавливается на последний объект модели Subject.
def subject_mark_create(request, grade_pk, exam_pk):
subjects = Subject.objects.get_by_grade(grade_pk).order_by('name')
SubjectMarkFormset = inlineformset_factory(Exam, SubjectMark, extra=subjects.count(), max_num=subjects.count(), fk_name='exam', form=SubjectMarkForm, can_delete=False)
exam = get_object_or_404(Exam, pk=exam_pk)
if request.method == "GET":
formset = SubjectMarkFormset(instance=exam)
for form in formset:
for subject in subjects:
form['subject'].initial = subject
Мой текущий набор встроенных форм