Skip to content
Snippets Groups Projects
Verified Commit 23ac6a88 authored by Nik | Klampfradler's avatar Nik | Klampfradler
Browse files

Be more explicit in lesson form handling. Closes #14.

parent 51e723c8
No related branches found
No related tags found
No related merge requests found
......@@ -35,8 +35,7 @@ def lesson(request: HttpRequest, week: Optional[int] = None, period_id: Optional
# Create or get lesson documentation object; can be empty when first opening lesson
lesson_documentation, created = LessonDocumentation.objects.get_or_create(
lesson_period=lesson_period, week=wanted_week)
lesson_documentation_form = LessonDocumentationForm(
request.POST or None, instance=lesson_documentation, prefix='leson_documentation')
lesson_documentation_form = LessonDocumentationForm(instance=lesson_documentation, prefix='leson_documentation')
# Create all missing personal notes about members of all groups in lesson
for group in lesson_period.lesson.groups.all():
......@@ -47,15 +46,18 @@ def lesson(request: HttpRequest, week: Optional[int] = None, period_id: Optional
# Create a formset that holds all personal notes for all persons in this lesson
persons_qs = PersonalNote.objects.filter(
lesson_period=lesson_period, week=wanted_week)
personal_note_formset = PersonalNoteFormSet(
request.POST or None, queryset=persons_qs, prefix='personal_notes')
personal_note_formset = PersonalNoteFormSet(queryset=persons_qs, prefix='personal_notes')
if request.method == 'POST':
if request.POST.get('action', None) == 'lesson_documentation':
lesson_documentation_form = LessonDocumentationForm(request.POST, instance=lesson_documentation, prefix='leson_documentation')
# Save the lesson documentation
if lesson_documentation_form.is_valid():
lesson_documentation_form.save()
elif request.POST.get('action', None) == 'personal_notes':
personal_note_formset = PersonalNoteFormSet(request.POST, queryset=persons_qs, prefix='personal_notes')
# Save all personal notes
if personal_note_formset.is_valid():
personal_note_formset.save()
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment