【发布时间】:2019-03-26 06:20:35
【问题描述】:
我是 Djnago 和 Python 的新手。
我在 Djnago 中创建了名为 StaffAccessMiddleware 的中间件类
我使用 social_django 应用程序从 Gmail 创建用户,我想实现
is_staff = True 并仅在用户首次登录 DJango 时分配至少一个组。
我的问题是如何在中间件中访问用户,并且只检查用户第一次输入此代码的情况,在这种情况下,我需要分配 is_staff = True 并在创建用户后分配组。
我尝试创建如下中间件类。
class StaffAccessMiddleware(object):
def process_request(self, request):
if hasattr(request, 'user') and request.user.is_authenticated():
user = request.user
if groups:
groups[0].name
return None
【问题讨论】:
标签: django python-2.7 django-models django-rest-framework django-middleware