diff --git a/biscuit/apps/chronos/views.py b/biscuit/apps/chronos/views.py index 78508d42254b5e16ac7b150cc1a6773a72b46e13..265e890f3baa173db5cad58ccc1f7e4ca64c3e41 100644 --- a/biscuit/apps/chronos/views.py +++ b/biscuit/apps/chronos/views.py @@ -140,8 +140,14 @@ def edit_substitution(request: HttpRequest, id_: int, week: int) -> HttpResponse lesson_substitution = LessonSubstitution.objects.filter( week=week, lesson_period=lesson_period).first() if lesson_substitution: + # Inject fields from URL as workaround for disabled form fields + # cf. https://stackoverflow.com/a/4664866/3035850 + POST = request.POST.copy() + POST['week'] = week + POST['lesson_period'] = id_ + edit_substitution_form = LessonSubstitutionForm( - request.POST or None, instance=lesson_substitution) + POST or None, instance=lesson_substitution) else: edit_substitution_form = LessonSubstitutionForm( request.POST or None, initial={'week': week, 'lesson_period': lesson_period})