创建一个模块
auto_auth.py:
from django.contrib.auth.models import Userfrom django.utils.deprecation import MiddlewareMixinclass AutoAuthMiddleware(MiddlewareMixin): def process_request(self, request): request.user = User.objects.filter()[0]
MIDDLEWARE在您的中编辑
settings.py:
- 去掉
'django.contrib.auth.middleware.AuthenticationMiddleware'
- 加
'auto_auth.AutoAuthMiddleware'
User.objects.filter()[0]如果需要特定用户,可以更改为其他内容。
针对您的评论:是的。要完全不使用用户运行Django管理员,请尝试以下操作:
class User: is_superuser = True is_active = True is_staff = True id = 1def return_true(*args, **kwargs): return TrueUser.has_module_perms = return_trueUser.has_perm = return_trueclass AutoAuthMiddleware(MiddlewareMixin): def process_request(self, request): request.user = User()
然后
'django.contrib.auth'从
INSTALLED_APPS
但是,如果您使用任何依赖于auth应用程序的应用程序,那将是一段糟糕的时光。



