UpdateView создает новый объект вместо изменения оригинала - PullRequest
0 голосов
/ 01 марта 2020

Я начну с того, что знаю, что об этом спрашивали, но я просмотрел эти ответы, и здесь не было решения.

views.py:

class JobUpdateView(UpdateView):
    model = Job
    form_class = JobForm
    template_name = 'job/edit_job.html'

urls.py:

path('edit/<int:pk>/', job_views.JobUpdateView.as_view(), name='edit_job'),

(включая <form>, который я использую для удаления объектов на тот случай, если некоторый эффект):

    {% for job in jobs  %}
          <button ><a href="{% url 'edit_job' job.id %}" >Edit</a></button>  <!-- edit-->
          <form class="" action="{% url 'delete_job' pk=job.id %}" method="post"> <!--delete-->
            {% csrf_token %}
            <input type ='hidden' name ='job_id' value='{{ job.id }}'/>
            <button type="submit">Delete</button>
          </form>
        </div>
   {% endfor %}

Это отобразит список сообщений пользователя, если пользователь нажимает кнопку «редактировать» на указанном сообщении c, он отобразит соответствующий объект и его содержимое в форме для быть отредактированным. Но когда пользователь сохраняет эту форму, вместо редактирования исходного объекта теперь есть два объекта, исходный и все, что было изменено. Не уверен, почему это происходит?

...