使用Dajngo 通过代码添加xadmin用户和权限(组)

时间:2022-09-16 11:50:48

在开发的时候,用户要求在认证的时候自动添加xadmin登录账户和分配组权限

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
from django.contrib.auth.models import Group,User
from django.http import JsonResponse
def test(req):
 name=req.POST['name']
 account=req.POST['account']
 password=req.POST['password']
 an=Group.objects.filter(id=1).first() #二级管理组 是管理员在xadmin后台添加的权限组
 user = User(username=account)
 user.set_password(password)
 user.is_superuser = False
 user.is_active = True
 user.first_name = name
 user.is_staff = True
 user.save() #先生成用户
 user.groups.add(an)
 return JsonResponse({'ret':0,'msg':'success'})

补充知识:django 登陆访问控制LoginRequiredMixin

mixin_utils.py

?
1
2
3
4
5
6
7
8
9
10
# _*_ coding:utf-8 _*_
from django.contrib.auth.decorators import login_required
from django.utils.decorators import method_decorator
 
 
class LoginRequiredMixin(object):
 
 @method_decorator(login_required(login_url='/login/'))
 def dispatch(self,request,*args,**kwargs):
 return super(LoginRequiredMixin,self).dispatch(request,*args,**kwargs)

写view的时候,直接继承LoginRequiredMixin,如果未登录,则跳转到登陆页面

以上这篇使用Dajngo 通过代码添加xadmin用户和权限(组)就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持服务器之家。

原文链接:https://blog.csdn.net/QQ1752506968/article/details/81168770