Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/django/24.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 在哪里可以将保存确认页面连接到Django管理员?(类似于删除确认)_Python_Django - Fatal编程技术网

Python 在哪里可以将保存确认页面连接到Django管理员?(类似于删除确认)

Python 在哪里可以将保存确认页面连接到Django管理员?(类似于删除确认),python,django,Python,Django,我想在保存之前模拟删除确认页的行为 管理员中的某些模型。在我的例子中,如果我改变一个对象, 应删除某些其他对象,因为它们取决于对象的当前状态 过时的状态 我知道在哪里实现实际的级联更新(内部 父模型的save方法),但我看不到一个快速的方法来询问 用户进行确认(如果他们决定不进行确认,则回滚) 保存)。我想我可以实现一些奇怪的确认逻辑 直接在save方法内部(类似于两阶段保存),但是 看起来…丑陋 有什么想法,甚至是进入django代码库的一般指针吗 谢谢 我绝不是Django专家,所以这个答案

我想在保存之前模拟删除确认页的行为 管理员中的某些模型。在我的例子中,如果我改变一个对象, 应删除某些其他对象,因为它们取决于对象的当前状态 过时的状态

我知道在哪里实现实际的级联更新(内部 父模型的save方法),但我看不到一个快速的方法来询问 用户进行确认(如果他们决定不进行确认,则回滚) 保存)。我想我可以实现一些奇怪的确认逻辑 直接在save方法内部(类似于两阶段保存),但是 看起来…丑陋

有什么想法,甚至是进入django代码库的一般指针吗


谢谢

我绝不是Django专家,所以这个答案可能会误导你


开始四处寻找
django.contrib.admin.options.ModelAdmin
,尤其是
render\u change\u form
response\u change
。我想您需要为您的模型创建ModelAdmin子类,并提供这些方法所需的行为。

您可以重载模型管理员的
get\u form
方法,并在生成的表单中添加一个额外的复选框。或者,您可以覆盖
change\u view
并拦截请求。

您是否考虑过覆盖相关模型的管理模板?这提供了一个很好的过程概述。在这种特殊情况下,拥有更细粒度的控制级别可能是实现所需结果的最佳方式。

我已经重载了部分更改表单,但这种特殊行为似乎已硬编码到核心中(至少是保存后重定向url)。也许我可以隐藏帖子保存确认url并在那里做一些有趣的事情?嗨,我正要发布相同的问题。你解决了这个问题吗?没有,我从来没有解决过这个问题。在我的例子中,这不是一个非常常见的操作,所以我只是简单地说了一下。我们就是这样做的,但我可以看到使用javascript显示确认屏幕要容易得多。