django.urls.exceptions.NoReverseMatch在deleteview上

时间:2019-08-05 10:55:35

标签: python django

我正在使用通用DeleteView删除帖子。点击删除链接后,它会返回

  

django.urls.exceptions.NoReverseMatch :与“ postdelete”相反   找不到参数。尝试了1种模式:   #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 /

之前和之后放置
{{1}}

2 个答案:

答案 0 :(得分:1)

您没有将id传递到URL。

尝试这样的事情

<form action={% url "postdelete" id="{{id}}" %} method="post">

答案 1 :(得分:0)

在Delete视图中,无需在html表单操作中传递ID 这样做:

 <form method="post">
            {% csrf_token %}
            <p>Are you sure you want to delete "{{ id }}"?</p>
        <input type="submit" value="Confirm">
    </form>