我正在使用通用的DeleteView删除一篇文章。单击“删除”链接时,它将返回
django.urls.exceptions.NoReverseMatch: Reverse for 'postdelete' with no arguments not found. 1 pattern(s) tried:
['posts/(?P<id>[0-9]+)/delete/$']
我试着将
#urls.py
path('posts/<int:id>/delete/',blogpostDelete.as_view(),name='postdelete'),
#DeleteView
class blogpostDelete(DeleteView):
success_url='/posts/'
template_name="blog/delete.html"
def get(self,request,id) :
Blogpost = get_object_or_404(blogpost,id=id)
return self.render_to_response({'id':id})
#link in template
<a href={% url "postdelete" id=id %}>Delete</a>
#delete.html
{% block content %}
<form action={% url "postdelete" %} method="post">
{% csrf_token %}
<p>Are you sure you want to delete "{{ id }}"?</p>
<input type="submit" value="Confirm">
</form>
{% endblock %}
在Delete视图中,不需要在html表单操作中传递id 这样做:
您没有将
id
传递到url。你知道吗试试这个
相关问题 更多 >
编程相关推荐