首页 > 代码库 > djiango -权限管理

djiango -权限管理

一、权限管理表结构

 model.py  

from django.db import models

# Create your models here.

#权限表
class Permission(models.Model):                                    #
    caption = models.CharField(max_length=32)
    parent_id = models.ForeignKey(Permission, related_name=k, to_field=id, null=True, blank=True)
    code = models.CharField(max_length=64, null=True,blank=True)
    method = models.CharField(max_length=16, null=True,blank=True)
    kwargs = models.CharField(max_length=128, null=True,blank=True)
    is_menu = models.BooleanField(default=False)

    def __str__(self):
        return self.caption
#角色表
class Role(models.Model):
    name = models.CharField(max_length=32)
    def __str__(self):
        return self.name
#角色对应的权限表
class RoleToPermission(models.Model):
    menu_id = models.ForeignKey(Permission, to_field=id)
    role_id = models.ForeignKey(Role, to_field=id)

    def __str__(self):
        return "%s-%s" %(self.menu_id.caption, self.role_id.name)

#用户表
class UserInfo(models.Model):
    username = models.CharField(max_length=32)
    password = models.CharField(max_length=64)

    def __str__(self):
        return self.username

#用户对应的权限表
class UserInfoToRole(models.Model):
    user_id = models.ForeignKey(UserInfo, to_field=id)
    role_id = models.ForeignKey(Role, to_field=id)
    def __str__(self):
        return %s-%s %(self.user_id.username, self.role_id.name)


 

二、easyui实现权限管理后台布局

    1下载easyui:www.jeasyui.com/download/  

    2解压下载压缩包

        拷贝若干目录文件到  django静态文件目录

        

        技术分享

         拷贝至

         技术分享

    3、修改模板 

      1)源码模板目录   demo/accordion/basic.html  修改为左侧栏目

        技术分享

        2)源码模板文件   demo/tree/checkbox.html  修改为左侧栏目树形结构

           技术分享

        

三、权限数据表填充数据

  admin.py 

from django.contrib import admin
from app01 import models
# Register your models here.
admin.site.register(models.Permission)
admin.site.register(models.Role)
admin.site.register(models.RoleToPermission)
admin.site.register(models.UserInfo)
admin.site.register(models.UserInfoToRole)

 

  python manage.py createsuperuser

 

 

  1.权限表创建数据

    标题 一级菜单

  技术分享

 

技术分享

 

 

  创建二级菜单

技术分享

 

   2.创建角色数据

 

技术分享

 

   技术分享

   3.角色对应权限表创建数据

    技术分享

 

技术分享

 

    4.创建用户

    技术分享

    技术分享

 

 

     5.用户对应角色数据

技术分享

 

技术分享

 

djiango -权限管理