无Auth应用的Scaffold或django-admin
我自己做了一个认证应用,现在管理员功能不正常,你有什么建议吗?
现在出现的错误是:'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)。