首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

如何在Django `DeleteView`中传递`success_url`的参数(slug)

在Django的DeleteView中,可以通过重写get_success_url()方法来传递success_url的参数(slug)。DeleteView是Django提供的一个通用视图,用于处理删除操作。

首先,在你的视图类中继承DeleteView,然后重写get_success_url()方法。在该方法中,你可以获取到被删除对象的slug,并将其作为参数传递给success_url

以下是一个示例代码:

代码语言:txt
复制
from django.views.generic import DeleteView
from django.urls import reverse_lazy
from .models import YourModel

class YourDeleteView(DeleteView):
    model = YourModel
    success_url = reverse_lazy('your_success_url_name')

    def get_success_url(self):
        # 获取被删除对象的slug
        slug = self.kwargs['slug']
        # 构建带有slug参数的success_url
        success_url = reverse_lazy('your_success_url_name', kwargs={'slug': slug})
        return success_url

在上述代码中,YourDeleteView继承自DeleteViewmodel属性指定了要删除的模型,success_url属性指定了默认的成功跳转地址。

然后,通过重写get_success_url()方法,我们可以获取到被删除对象的slug,然后使用reverse_lazy()函数构建带有slug参数的success_url

最后,将success_url返回即可。

请注意,上述示例中的your_success_url_name需要替换为你实际的成功跳转地址的名称。

推荐的腾讯云相关产品:腾讯云服务器(CVM),腾讯云数据库MySQL版(TencentDB for MySQL),腾讯云对象存储(COS),腾讯云容器服务(TKE)等。你可以通过访问腾讯云官方网站获取更多关于这些产品的详细信息和介绍。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

Django内置通用类视图CBV及示例

,各种有用对象被存储在self上,同request(self.request)一样,其中包含了从URLconf获取到位置参数(self.args)和关键字参数(self.kwargs)....: 指定在上下文中使用变量名称. pk_url_kwarg: URLconf,包含逐渐关键字参数名称.默认为'pk'. get_context_data:返回显示对象上下文数据....参数,如果找到了这个参数,该方法使用这个参数值执行一个基于逐渐查询.如果这个参数没有找到,该方法查找slug_url_kwarg参数,使用slug_field字段执行针对slug查询.当query_pk_and_slug...该视图用法与CreateView基本相同,仅在BaseUpdateView对get()和post()内部实现有区别. 6.DeleteView ?...根据报错提示,我们可以直接在视图下给success_url参数赋值,或在模型中去定义get_absolute_url()方法,去设置成功后跳转url。

3.2K10

Django内置通用类视图及实例

,各种有用对象被存储在self上,同request(self.request)一样,其中包含了从URLconf获取到位置参数(self.args)和关键字参数(self.kwargs)....: 指定在上下文中使用变量名称. pk_url_kwarg: URLconf,包含逐渐关键字参数名称.默认为'pk'. get_context_data:返回显示对象上下文数据....参数,如果找到了这个参数,该方法使用这个参数值执行一个基于逐渐查询.如果这个参数没有找到,该方法查找slug_url_kwarg参数,使用slug_field字段执行针对slug查询.当query_pk_and_slug...该视图用法与CreateView基本相同,仅在BaseUpdateView对get()和post()内部实现有区别. 6.DeleteView ?...根据报错提示,我们可以直接在视图下给success_url参数赋值,或在模型中去定义get_absolute_url()方法,去设置成功后跳转url。

2.9K40

利用Django通用类视图(class

对于这些场景,Django提供了几个class-based view来处理: ListView UpdateView CreateView DeleteView 这几个类视图分别对应着查询ListView...ListView可以通过你给出model以及想要展示modelfield,在对应数据库查询出对应对象存放在List对象,并传递给template渲染。...如果你在Django设置settings.pyTEMPLATES下配置了'APP_DIRS': True 的话,Django默认会去渲染/project/app_name/templates/app_name...在web开发约定俗成规则是,对于查询类请求用get,对于修改类请求用post。Django在设计时候也遵循了这个原则,所以以下每个view,都具有支持get和post函数。...而在post请求发送过来时候,Django会根据model里field属性去做合法性校验(类型是否正确、字段是否必填等),在校验成功以后重定向至success_url

1.5K20

DjangoBlog|12 博客文章删除功能(优化版)

前端页面我们修改好后,我们还需要改下DeleteArticleView视图,需要注释掉视图类template_name,现在我们利用弹框处理,就没必要设置额外模板了。...进入Project/brief_blog/myblog/blog/views.py,将DeleteArticleViewtemplate_name一行注释/删除掉。...# 删除博客 class DeleteArticleView(DeleteView): model = Article success_url = reverse_lazy('home'...老规矩先说怎么解决,注释/删除掉/Project/brief_blog/myblog/templates/article_detial.html: <!...,raphael.js是一个可以渲染可缩放矢量图形 (SVG) js库,这个被引入本来是django-mdeditor渲染md内容用,暂时不知道为什么会和Bootstrapmodal冲突,按上面修改就可以解决问题

69620

django URL (路由系统)

可选传递给视图函数默认参数(字典形式) 一个可选name参数 无命令分组 举例: 修改mysite目录下urls.py,最后一行添加 urlpatterns = [     path('admin...例子里year_archive函数接收到year参数作为参数 并且会自动转换year为整型而不是字符串。...其中converter为路径转换器,name为参数名,。对于捕获值没有路径转换器,那么它会匹配除了斜杠"/"外所有字符作为捕获值。     3.url不需要以斜杠开头。.../ 页面输出:2003/3/building-a-django-site Path Converter url里捕获值使用Path Converter来对值做转换,类型转换。...slug:匹配字母、数字以及横杠、下划线组成字符串。     uuid:匹配格式化uuid, 075194d3-6885-417e-a8a8-6c931e272f00。

1.6K30

Python Django 编程 | 连载 02 - Django 路由

二、Django 路由中参数 在 URL 可以通过在 ?...后面通过添加键值对 key=value 方式来传递参数,当有多个键值对时候使用 & 来连接, http://127.0.0.1:8000/xray/index?...也可以通过路径本身来传递参数 http://127.0.0.1:8000/xray/index/stark/ URL 参数类型可以是以下几种类型: 字符串类型:匹配任何非空字符串,但不包括斜杠,...格式对象 在 Django 2.0 以前是使用正则表达式来匹配路径参数类型 url(r'^add/(?...获取请求路径参数 在 xray 应用下 views.py 定义一个新视图函数 yankee,在该视图函数定义一个参数用来接收请求路径传递过来参数

97320

djangoModelForm多表单组合解决方案

所以,基本表单功能看BaseForm已经足够了。 2、从模型创建表单 django对于MVCC与M间映射是非常体贴,集中体现Model模型(比如模型权限与用户认证)。...告诉django需要在表单创建哪些字段。..._save_m2m           return self.instance   所以,对于ModelForm我们可以传入instance参数初始化表单,可以调用save()方法直接将从html里得到表单数据持久化到数据库...3、通用视图 django.views.generic.ListView和django.views.generic.edit下CreateView, UpdateView, DeleteView都是通用视图...再写视图,这里要重写2个方法: class PrimeContractAdd(CreateView):       success_url = ...

3.3K20

Django路由控制URL详解

关键字参数由正则表达式匹配命名组组成,但是可以被django.conf.urls.url()可选参数kwargs覆盖。...P[\w-]+)/$', views.article_detail), ] 与path()方法不同在于两点: year匹配不到10000等非四位数字,这是正则表达式决定 传递给视图所有参数都是字符串类型...3.3 有名分组 上面的示例使用简单、没有命名正则表达式组(通过圆括号)来捕获URL 值并以位置 参数传递给视图。...在更高级用法,可以使用命名正则表达式组来捕获URL 值并以关键字 参数传递给视图。 在Python 正则表达式,命名正则表达式组语法是(?...P[0-9]{2})/$', views.article_detail), ] 这个实现与前面的示例完全相同,只有一个细微差别:捕获值作为关键字参数而不是位置参数传递给视图函数。

1K20

python-Django-URL 路由(一)

DjangoURL路由系统还支持命名URL模式,这允许开发人员在应用程序中使用可重用URL模式。在Django,URL路由规则通常定义在一个名为urls.py文件。...在Django,URL路由规则通常定义在一个名为urls.py文件。...在DjangoURL路由规则,可以使用以下特殊字符:int:pk:表示一个整数值,可以使用pk作为变量名slug:slug:表示一个文本值,可以使用slug作为变量名str:username:表示一个字符串值...第三个URL模式使用一个命名捕获组来表示一个整数值,并将其传递给视图函数。第四个URL模式使用一个命名捕获组来表示一个包含连字符和单词字符文本值,并将其传递给视图函数。...Django还提供了许多其他URL路由选项和功能,例如在视图函数中使用参数来生成URL,使用URL模式命名空间来区分应用程序和使用可选参数来定义URL模式。

27930

Django 2.1.7 视图

slug - 匹配由ASCII字母或数字组成任何slug字符串,以及连字符和下划线字符。例如, building-your-1st-django-site。 uuid - 匹配格式化UUID。...传参方式,另一种是路径参数传递方式。 配置以?...可以看到两个参数都可以接收到了。 下面再来看看通过url路径来传递参数方法。 配置以路径传参方式 参数不再以?形式进行拼接,而是以路径/a/a形式进行传递。... 为参数字符串写法,但是不支持中文,涉及一个中文url编码问题。...使用path()字典传递参数 当服务器有些隐藏参数需要带上,又不想每次请求都添加参数请求,那么可以使用字典参数传递。 直接上示例,如下: ?

72120
领券