【问题标题】:Django superuser doesn't have permission to delete modelsDjango 超级用户无权删除模型
【发布时间】:2020-01-19 15:43:43
【问题描述】:

我正在将 Django 网站从 Django 1.8 升级到 Django 2.2,但在尝试从 Django 管理更改列表视图中删除对象时遇到了问题。当我尝试删除一个对象时,我看到一个屏幕,上面写着“删除所选记录将导致删除相关对象,但您的帐户无权删除以下类型的对象”。问题是,我是超级用户,应该有权删除我想要的任何对象,或者我想。

我已经阅读了大量关于 Django 升级和超级用户权限的文档,但是我没有偶然发现任何对我有帮助的东西(不过我可能会遗漏一些东西)。我已经尝试创建一个新的超级用户以防万一,但仍然会出现相同的消息。无论如何,有谁知道为什么会发生这种情况?

注意:我无法显示任何代码,因为我在一家公司工作并且我签署了 NDA。只是一些帮助指出我正确的方向将不胜感激。

【问题讨论】:

  • 有一个包,github.com/django-guardian/django-guardian。这允许您限制对模型对象的权限。这可能使您无法删除模型。我可能还需要在模型管理员处进行操作,确保其中没有锁定操作。
  • 检查 has_delete_permission 方法是否已在模型管理中被覆盖。
  • 谢谢大家! dirkgroten 是对的,事实证明 has_delete_permission 被覆盖了!感谢您的帮助!

标签: python django model permissions superuser


【解决方案1】:

对于任何偶然发现这个问题的人来说,dirkgroten 是对的,结果证明 has_delete_permission 被覆盖了!感谢您的帮助 dirkgroten!

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2021-12-01
    • 2014-09-03
    • 2022-01-08
    • 1970-01-01
    • 2013-09-17
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多