首页 > 解决方案 > Django 管理界面 - 开发服务器上的权限

问题描述

我有一个运行多年的旧项目(Django 1.6.5、Python 2.7)。我必须进行一些更改并建立一个具有所有正确 django 和 python 要求(包、版本等)的工作开发环境

一切都运行良好,除非我试图在管理面板中进行更改。我可以正常登录并查看数据库(sqlite3)我看到我的用户具有超级用户权限。但是 django 说“您无权更改任何内容”,因此甚至没有显示为管理界面注册的任何模型。

我正在使用在实时服务器上运行的相同数据库。我完全没有问题(实时服务器也在开发模式下运行,DEBUG=True 没有问题)-> 我只能看到历史记录(我的更改日志)-没有别的

我还创建了一个新的超级用户 - 但这里有同样的问题。

我会很感激任何指针(也许如何调试这个?)

标签: pythondjangodatabaseadminprivileges

解决方案


最后,我发现了问题:

admin.autodiscover()

由于某种原因,在项目的urls.py中被注释掉了。(我可能已经这样做了,试图让该项目在更新版本的 django 中工作) - 所以admin.site.register从未被调用并且app_dict从未填充。然后返回的index.html模板django.contrib.admin

您无权编辑任何内容。

或者它是等效的翻译(我觉得令人困惑,因为权限是正确的,只有没有模型被添加到管理字典中。

我希望这可以帮助遇到类似问题的任何人


推荐阅读