如何在我的模板中使用 Django DeleteView

Posted

技术标签:

【中文标题】如何在我的模板中使用 Django DeleteView【英文标题】:How can I use Django DeleteView in my template 【发布时间】:2020-09-25 19:36:26 【问题描述】:

我在模板中使用 Django DeleteView,并创建了一个 url 和视图。但它显示“必须使用 URLconf 中的对象 pk 或 slug 调用通用详细视图 EmployeeDeleteView。”我正在查看 django 文档,看起来 DeleteViews 与模型相结合。我如何在这里使用 Django DeleteView。如果有人请帮助我。

views.py

class EmployeeDeleteView(DeleteView):
    model = Employee
    success_url = 'create_employee'
    
    def get(self, request, *args, **kwargs):
        return self.post(request, *args, **kwargs)

urls.py

path('delete_employee/<int:id>', EmployeeDeleteView.as_view(), name='delete_employee'),

删除按钮

<button class="deletebtn show-form-delete" type="submit">
                                    <i class="fa fa-trash-o"></i>&nbsp;<a
                                        onclick="return confirm('Are you sure do you want to delete i.name')"
                                        href="% url 'delete_employee' i.id %">Delete</a></button>

【问题讨论】:

【参考方案1】:
<form method="POST" action="% url 'delete_employee' i.id %">
% csrf_token %
<button class="deletebtn show-form-delete" type="submit" value="DELETE" onclick="return confirm('Are you sure do you want to delete i.name')">
    <i class="fa fa-trash-o"></i>
    Delete</button>
</form>

【讨论】:

【参考方案2】:

看起来您需要在 urls.py 中使用 pk 而不是 &lt;int:id&gt;

path('delete_employee/<int:pk>', EmployeeDeleteView.as_view(), name='delete_employee'),

见https://docs.djangoproject.com/en/3.1/ref/class-based-views/generic-date-based/

【讨论】:

那我也想修改按钮的url 您能否将其包含在您的主要问题中,并详细说明您希望它如何改变? 谢谢先生的大力帮助

以上是关于如何在我的模板中使用 Django DeleteView的主要内容,如果未能解决你的问题,请参考以下文章

在django中渲染模板后如何在我的视图中调用一些逻辑

如何使用 CBV 在我的所有 Django 模板中创建侧边栏?

如何在模板中使用 django-summernote

django如何使用模板标签

如何在我的自定义小部件模板中包含内置的 django 小部件模板?

如何在 django 模板中使用 vue 库