无Auth应用的Scaffold或django-admin

-2 投票
1 回答
1563 浏览
提问于 2025-04-15 11:26

我自己做了一个认证应用,现在管理员功能不正常,你有什么建议吗?

现在出现的错误是:'User'对象没有'is_authenticated'这个属性。

我知道我的用户确实没有这个方法。所以我有两种选择: - 修改管理员功能 - 调整我的用户系统

我想问的是:有没有简单的方法可以让管理员功能不依赖于认证系统?

1 个回答

2

看看这个文件 django/contrib/admin/views/decorators.py:

from django.contrib.auth.models import User
from django.contrib.auth import authenticate, login

这些内容是在一个叫 staff_member_required 的装饰器中使用的,这个装饰器用来保护管理应用的访问权限。

管理应用需要用到 django.contrib.auth,你可能会想要去修改它的行为,但这样做是不太好的习惯(Django 和 Ruby on Rails 不一样,Python 也不是 Ruby)。

撰写回答