Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/spring-boot/5.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
django模型版本控制/修订/批准-如何允许用户编辑自己的配置文件,但在新配置文件获得批准之前保持旧配置文件在线?_Django_Django Models - Fatal编程技术网

django模型版本控制/修订/批准-如何允许用户编辑自己的配置文件,但在新配置文件获得批准之前保持旧配置文件在线?

django模型版本控制/修订/批准-如何允许用户编辑自己的配置文件,但在新配置文件获得批准之前保持旧配置文件在线?,django,django-models,Django,Django Models,我正在建立一个网站,用户可以在其中更改他们公开显示的个人资料。然而,我需要所有的变化,以得到管理员的批准,然后才能上线。在更改获得批准之前,将显示其旧配置文件。在管理员中,应该有一个等待批准的配置文件列表。最好(但不是必需)保留版本的历史记录 我已经看过django的回归,但我不认为这可以处理显示旧版本的同时保持新版本的批准 我正在寻找通过django实现这一目标的方法…两个时髦的想法。那么 使用撤销并添加逻辑,该逻辑在保存时自动将配置文件标记为“未批准”()如果管理员未执行保存,则向代码中添加

我正在建立一个网站,用户可以在其中更改他们公开显示的个人资料。然而,我需要所有的变化,以得到管理员的批准,然后才能上线。在更改获得批准之前,将显示其旧配置文件。在管理员中,应该有一个等待批准的配置文件列表。最好(但不是必需)保留版本的历史记录

我已经看过django的回归,但我不认为这可以处理显示旧版本的同时保持新版本的批准


我正在寻找通过django实现这一目标的方法…

两个时髦的想法。那么

使用撤销并添加逻辑,该逻辑在保存时自动将配置文件标记为“未批准”()如果管理员未执行保存,则向代码中添加自定义访问器,以从撤销存档中获取最新批准的配置文件


或者,如果恢复不顺利,请为每个用户提供“当前配置文件”和“待定配置文件”,并在配置文件获得批准后更新FKs…

此应用程序完全满足您的需要

我在使用dominno的django moderation时遇到了一些问题,这些问题包括:

  • 使用一个独特的模型来跟踪其他几个方面的更改,使用一个GenericForeignKey可以减少监视内容所需的表的数量,但是管理起来很麻烦。我不会为这类任务使用通用的foreignkey
  • 如果我在模型中更改一个字段的名称,沙盒值的反序列化将总是失败。(例如,如果我在适度监控后迁移了字段名称更改)。它至少应该能够恢复非伪造的字段值
因此,我制作了自己的应用程序,解决了上述问题。 它会给你你想要的。


它有自动审批机制、字段选择(您可以始终忽略某些字段,并将其他字段置于验证状态)和默认值(例如,在创建对象时自动将其设置为隐藏,以便可以在一开始不可见的情况下对其进行调节)

这似乎是在耍把戏,非常感谢。我在设置它时遇到了一些问题——有一个错误说我正在设置的模型“已经注册为适度”——但是一些挖掘证明这与递归包含有关。已通过将moderation.register调用移动到其自己的moderation.py文件中,然后包括该文件来修复。谢谢Steve。我选择了开箱即用的解决方案,因为他们描述了一个用例,该用例准确地描述了我正在做的事情“用户更改其配置文件,旧的配置文件数据在站点上可见。当版主批准时,新的数据将在站点上可见。”我确实看到了另一个解决方案——Django Gatekeeper,它看起来非常相似:事实证明,恢复对我来说也非常有用,可以保存用户配置文件更改的历史记录。有人有同时运行django reversion和django moderation的经验吗?