首先,我知道有人问过这个问题,但我仔细查看了这些答案,但并不是所有的解决方案。
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 %}
这将显示用户的帖子列表,如果用户单击特定帖子上的“编辑”,它将以要编辑的形式显示适当的对象及其内容。但是,当用户保存该表单时,现在不用编辑原始对象,而是有两个对象,即原始对象和任何已更改的对象。不确定为什么会这样吗?