3
내 대학 관리 웹 사이트의 한 페이지에 여러 양식을 표시하려고합니다. 교사는 동일한 페이지의 그룹 평가에서 한 그룹에 대한 모든 점수를 입력 할 수 있어야한다는 아이디어입니다. 보기에는 그룹 요소 양식이 표시되어야하며 개별 요소에 대한 양식이 여러 개 있어야합니다 (그룹 크기가 다를 수 있음).한 페이지에 여러 다른 양식 사용 (Django 1.7의 Crispyforms)
Django 문서는 양식 접두사에 대한 아이디어가 조금 부족하므로 올바른 방법인지는 잘 모르겠습니다. 양식을 파삭 파삭 한 형태로 렌더링하고 싶습니다. 이 방법이 효과가 있습니까, 아니면 제가 생각하고있는 목표를 달성하기위한 더 좋은 방법이 있습니까?
views.py
--------
# Generate the forms for the template
group_form = GroupForm(prefix='group')
student_forms = []
for student in students_in_group:
student_form = StudentForm(initial={...}, prefix=student.student_id)
student_forms.append(student_form)
...
# Processing post request
if request.method == 'POST':
group_form = GroupForm(request.POST, prefix='group')
if group_form.is_valid():
group_form.save()
for student in students_in_group:
student_form = StudentForm(request.POST, prefix=student.student_id)
if student_form.is_valid():
student_form.save()
group_feedback.html
-------------------
{% crispy group_form %}
{% for form in student_forms %}
{% crispy form %}
{% endfor %}