Python实现:某个用户登录后,查看自己拥有所有权限

权限管理
     
        权限表:
            1   订单管理
            2   用户管理
            3   菜单管理
            4   权限分配
            5   Bug管理
         
        用户表:
            1   Alex
            2   egon
         
        用户权限关系表:
            1    1
            1    2
            2    1
 
import pymysql

class DB:
    __conn = pymysql.connect(host="localhost", user="root",
                        password="tangyue520167",database="learn")

    __curse = __conn.cursor()

    @classmethod
    def execute_sql(cls,sql):
        cls.__curse.execute(sql)
        result = cls.__curse.fetchall()
        return result

    @classmethod
    def close(cls, conn):
        conn.close()


class User:
    def __init__(self, user, pwd):
        self.username = user
        self.password = pwd

    @property
    def login(self):
        flag = False
        userinfo = DB.execute_sql("select username,password from userinfo")
        for user in userinfo:
            if(self.username == user[0] and
                       self.password == user[1]):
                print("用户登录成功!")
                flag = True
                break
        return flag

    def view_priority(self):
        sql = "select * from permission where pid in (select pid from user_perm where uid = (select uid from userinfo where username='%s'))"%self.username
        perms = DB.execute_sql(sql)
        print("登录用户为" + self.username + ", 权限有:")
        for perm in perms:
            print('  ' + str(perm[0]) + "." +perm[1].strip())


if __name__ == "__main__":
    user = input("请输入用户名:")
    pwd = input("请输入密码:")
    user_tang = User(user,pwd)
    if user_tang.login:
        user_tang.view_priority()
    else:
        print("请先登录!")
             
    
原文地址:https://www.cnblogs.com/seperinna/p/9964158.html