• Auth认证


    内置User实现用户管理系统
    from django.contrib.auth.models import User
    from django.contrib.auth import login,logout,authenticate
    
    扩展User模型
    继承AbstrctBaseUser可以自定义额外字段,如果使用 自定义就要在setting中设置说明AUTH_USER_MODEL='xxx'
    
    权限设置
    判断用户(user)是否有某个权限:user.has_perm('项目名称.权限名称') 权限名称可以在auth_permission中的codename中查看
    设置用户(user)的权限:user.user_permission.add(权限对象):权限对象通过Permission模型中获取
    删除用户user的某个权限:user.user_permission.remove('权限对象')
    删除用户sser所有的权限:user.user_permission.clear()
    设置用过户user加入组group:user.groups.add(group)
    为组group设置权限:group..permission.add()
    ......
    
    自定义权限:
    在模型声明中国定义
    from django.db import models
    from django.auth.models import AbstrcBaseUser
    
    class MyUser(AbstrcBaseUser):
        qq=models.CharField(verbose_name='QQ号')
        
        class Meta(AbstrcBaseUser.Meta):
            #自己定义权限
            permission = ('自己要定义的codename字段','name字段')
    
    网页访问权限
    要登入后才能访问:@login_required(login_url='如果没有登入会自动跳转到这个页面') 如果登入成功后会自动返回到之前的页面,默认自己在setting.py中 设置LOGIN_URL='xxx'
    要有某个权限后才能访问:@permission_required(perm= '应用app.相应的权限'('要具有的某个权限'),login_url='失败会跳转的网页')
  • 相关阅读:
    centos 7 有点意思
    Thinkphp中路由Url获取的使用方法
    smarty中的母板极制_extends和block标签
    linux下php多版本的并存实现
    centos nginx,php添加到Service
    CI_Autocomplete_2.0.php轻松实现Bebeans与Codeigniter的智能提示
    php中的性能挖掘
    tar命令,转来等用
    Smarty插件简单开发
    iOS 7用户界面过渡指南
  • 原文地址:https://www.cnblogs.com/KingOfCattle/p/14317995.html
Copyright © 2020-2023  润新知