Django не сохраняется форма
Есть страница в выводом данных о заявке на обслуживание. На этой странице есть форма для комментария исполнителя. Мне необходимо, чтобы когда пользователь заполнял поле комментария и нажимал кнопку "задача выполнена", значение данного поля сохранялось в базу, а статус заявки менялся. Для этого я написал отдельную вьюшку, так как менять значение полей в Django через стандартное submit нельзя. Но почему-то форма не сохраняется и статус заявки не изменяется. При этом, если на форме использовать обычную кнопку submit, то все нормально, записи заносятся в базу, но статус заявки, при этом, не меняется. Как можно это исправить?
forms.py
class Request_response(forms.ModelForm):
commentary = forms.CharField(label='Описание работ...', widget=forms.Textarea(attrs={'class': 'form-input'}),required=False)
class Meta:
model = Requests
fields = ('commentary')
views.py
def review(request, pk):
request1 = Requests.objects.get(pk=pk)
response_form = Request_response(instance=request1)
status = Statuses.objects.get(id='3')
if request.method == 'POST':
response_form = Request_response(request.POST, request.FILES, instance=request1)
if response_form.is_valid():
request1.status_id = status
request1.save()
return redirect('requests')
else:
response_form = Request_response()
return render(request, 'main/request_view.html', {'request1': request1, 'response_form': response_form})
else:
return render(request, 'main/request_view.html', {'request1': request1, 'response_form': response_form})
request_view.html
{% block main %}
<div class="main">
<div class="container">
<div class="header">
<h3>Заявка №{{request1.id}} от {{request1.request_date}}</h3>
</div>
<div class="body">
<form method="post" enctype="multipart/form-data">
{% csrf_token %}
<div class="rows">
<p class="detailed_view_headers">Название заявки:</p>
<div class="detailed_view_fields">{{request1.request_name|default_if_none:'' }}</div>
<p class="detailed_view_headers">Статус: {{ request1.status }}</p>
...
{% if status == 2 %}
{% if is_moderator %}
<p>Комментарий исполнителя:</p>
{{ response_form.commentary }}
<p>Прикрепить объекты: {{ response_form.responce_attachments }}</p>
{% endif %}
{% endif %}
...
{% elif status == 2 %}
{% if is_moderator %}
<button type="submit" class="submit_button">Задача выполнена 1</button>
<a href="{% url 'request_review' request1.id %}" class="submit_button">Задача выполнена</a>
<a href="{% url 'request_cancellation' request1.id %}" class="cancel_button">Отменить заявку</a>
{% endif %}
...
urls.py
urlpatterns = [
path('', views.index),
path('requests/<int:pk>',views.request_view, name='request_details'),
path('requests/<int:pk>/review', views.review, name='request_review'),