id = db.Column(db.Integer, primary_key=True, autoincrement=True) mailaddr = db.Column(db.String(20), nullable=False) username = db.Column(db.String(50), nullable=False) stuid = db.Column(db.String(11), nullable=False) password = db.Column(db.String(100), nullable=False) # 引入外键grade.id grade_id = db.Column(db.Integer, db.ForeignKey('grade.id')) # 班级-学生一对多关系 grade = db.relationship( 'Grade', backref=db.backref('users'), foreign_keys=[grade_id]) #grade_id被指定为多个外键,建立关系时要指明foreign_keys ### 学生-作业多对多关系中间表 tb_user_task = db.Table( 'tb_user_task', db.Column('user_id', db.Integer, db.ForeignKey('user.id')), db.Column('task_id', db.Integer, db.ForeignKey('task.id'))) ### 作业(发布)表 class Task(db.Model): __tablename__ = 'task' id = db.Column(db.Integer, primary_key=True, autoincrement=True) taskname = db.Column(db.String(40), nullable=False) deadline = db.Column(db.String(40), nullable=False) # 引入外键grade.id grade_id = db.Column(db.Integer, db.ForeignKey('grade.id')) # 班级-任务一对多关系 grade = db.relationship('Grade', backref=db.backref('tasks'), foreign_keys=[grade_id])
COMMENTER = 0b00000100 # 管理板块的权限 BOARDER = 0b00001000 # 管理前台用户的权限 FRONTUSER = 0b00010000 # 管理后台用户的权限 CMSUSER = 0b00100000 # 管理后台管理员权限 ADMINER = 0b01000000 cms_role_user = db.Table( 'cms_role_user', db.Column('cms_role', db.Integer, db.ForeignKey('cms_role.id'), primary_key=True), db.Column('cms_user', db.Integer, db.ForeignKey('cms_user.id'), primary_key=True)) class CMSRole(db.Model): __tablename__ = 'cms_role' id = db.Column(db.Integer, primary_key=True, autoincrement=True) name = db.Column(db.String(50), nullable=False) desc = db.Column(db.String(100), nullable=False) create_time = db.Column(db.DateTime, default=datetime.now) permissions = db.Column(db.Integer, nullable=False) users = db.relationship('CMSUser',
class User(db.Model): __tablename__ = "user" id = db.Column(db.INTEGER, primary_key=True, autoincrement=True) username = db.Column(db.String(50), nullable=False) email = db.Column(db.String(50)) def __repr__(self): return "<User(username : %s )>" % self.username article_tag_table = db.Table( 'article_tag', db.Column("article_id", db.INTEGER, db.ForeignKey('article.id'), primary_key=True), db.Column("tag_id", db.INTEGER, db.ForeignKey('tag.id'), primary_key=True)) class Article(db.Model): __tablename__ = 'article' id = db.Column(db.INTEGER, primary_key=True, autoincrement=True) title = db.Column(db.String(50), nullable=False) author_id = db.Column(db.INTEGER, db.ForeignKey('user.id')) author = db.relationship('User', backref=db.backref('articles')) tags = db.relationship('Tag', backref='articles', secondary=article_tag_table)
from exts import db from datetime import datetime from werkzeug.security import generate_password_hash, check_password_hash # class Followers(db.Model): # __tablename__ = 'followers' # follower_id = db.Column(db.Integer,db.ForeignKey('userinfo.id'),primary_key=True) # followed_id = db.Column(db.Integer,db.ForeignKey('userinfo.id'),primary_key=True) followers = db.Table( 'followers', db.Column('follower_id', db.Integer, db.ForeignKey('userinfo.id'), primary_key=True), db.Column('followed_id', db.Integer, db.ForeignKey('userinfo.id'), primary_key=True)) class User(db.Model): __tablename__ = 'userinfo' id = db.Column(db.Integer, primary_key=True, autoincrement=True) #autoincrement自增长 uname = db.Column(db.String(50), nullable=False) passwd = db.Column(db.String(50), nullable=False) #posts = db.relationship('Post', backref = 'author', lazy = 'dynamic') followed = db.relationship('User', secondary=followers, primaryjoin=(followers.c.follower_id == id), secondaryjoin=(followers.c.followed_id == id),
from exts import db from werkzeug.security import generate_password_hash, check_password_hash from flask_login import LoginManager, UserMixin import datetime #oj import utils # TODO(roy4801): Rename this to problem_tag_relation relations = db.Table( 'relations', db.Column('problem', db.Integer, db.ForeignKey('problem.problem_id')), db.Column('tag', db.Integer, db.ForeignKey('tag.tag_id'))) # build the tables class Problem(db.Model): __tablename__ = 'problem' __table_args__ = {'mysql_collate': 'utf8_general_ci'} problem_id = db.Column(db.Integer, primary_key=True, nullable=False, unique=True) problemName = db.Column(db.String(100), nullable=False, unique=False) # 名稱 uid = db.Column(db.Integer, nullable=False, unique=False) # problemsetter info = db.Column(db.JSON, nullable=False) # 內容 build_time = db.Column(db.DateTime, nullable=False, default=datetime.datetime.now()) # 建立時間 # Relation
class CMSPermission(object): ALL_PERMISSION = 0b11111111 # 所有权限 VISITOR = 0b00000001 # 访问者 POSTER = 0b00000010 # 帖子管理 COMMENTER = 0b00000100 # 评论管理 BOARDER = 0b00001000 # 板块管理 FRONTUSER = 0b00010000 # 前台用户管理 CMSUSER = 0b00100000 # 后台用户管理 ADMINER = 0b01000000 # 可以管理后台管理员 cms_role_user = db.Table( 'cms_role_user', db.Column('cms_rold_id', db.INTEGER, db.ForeignKey('cms_role.id'), primary_key=True), db.Column('cms_user_id', db.INTEGER, db.ForeignKey('cms_user.id'), primary_key=True)) class CMSRole(db.Model): __tablename__ = 'cms_role' id = db.Column(db.INTEGER, primary_key=True, autoincrement=True) name = db.Column(db.String(50), nullable=False) desc = db.Column(db.String(200), nullable=True) create_time = db.Column(db.DATETIME, default=datetime.now) permissions = db.Column(db.INTEGER, default=CMSPermission.VISITOR) users = db.relationship('CMSUser',
class Author(db.Model): __tablename__ = 'author' id = db.Column(db.Integer, primary_key=True, autoincrement=True) author = db.Column(db.String(100), nullable=False) gender = db.Column(db.String(100), nullable=False) def __init__(self): pass article_tag = db.Table( 'article_tag', db.metadata, db.Column('article_id', db.Integer, db.ForeignKey('article.id'), nullable=False, primary_key=True), db.Column('tag_id', db.Integer, db.ForeignKey('tags.id'), nullable=False, primary_key=True)) class Article(db.Model): __tablename__ = 'article' id = db.Column(db.Integer, primary_key=True, autoincrement=True) title = db.Column(db.String(50)) author = db.Column(db.String(50)) # author = db.Column(db.String(50), db.ForeignKey('author.author' , name=)) time = db.Column(db.DateTime, default=datetime.now()) content = db.Column(db.Text, nullable=False)
# -*- coding: utf-8 -*- # 开发人员 :黎工 # 开发时间 :2020/12/3 15:21 # 文件名称 :news_model.PY # 开发工具 :PyCharm from apps.models import BaseModel from exts import db import time # 第三张表(多对多)news_tag news_tag = db.Table( 'news_tag', BaseModel.metadata, db.Column('news_id', db.ForeignKey('news.id'), primary_key=True), db.Column('tag_id', db.ForeignKey('tag.id'), primary_key=True)) # 标签表 class Tag(BaseModel): __tablename__ = 'tag' tname = db.Column(db.String(10), nullable=False) def __init__(self, json): self.tname = json['tname'] def __repr__(self): return self.tname def to_json(self): json = { 'id': int(self.id), 'date_time': self.date_time.strftime('%Y-%m-%d %H:%M:%S'),
from exts import db # 多对多关系,需要创建一张辅助表 article_tag = db.Table('article_tag', db.Column('article_id', db.Integer, db.ForeignKey('article.id')), db.Column('tag_id', db.Integer, db.ForeignKey('tag.id')) ) class Tag(db.Model): __tablename__ = 'tag' id = db.Column(db.Integer, primary_key=True, autoincrement=True) name = db.Column(db.String(100), nullable=False) class Article(db.Model): __tablename__ = 'article' id = db.Column(db.Integer, primary_key=True, autoincrement=True) title = db.Column(db.String(100), nullable=False) content = db.Column(db.Text, nullable=False) user_id = db.Column(db.Integer, db.ForeignKey('user.id'), nullable=False) # 使用secondary确认多对多关系 tags = db.relationship('Tag', secondary=article_tag, backref='articles') # author = db.relationship('User', backref=db.backref('articles')) class User(db.Model): __tablename__ = 'user' id = db.Column(db.Integer, primary_key=True, autoincrement=True) username = db.Column(db.String(100), nullable=False) articles = db.relationship('Article', backref='user', lazy='select')
# encoding: utf-8 from exts import db from datetime import datetime # 笔记与标签的中间表 note_tag = db.Table('note_tag', db.Column('note_id', db.Integer, db.ForeignKey('note.id'), primary_key=True), db.Column('tag', db.String(100), db.ForeignKey('tag.tag'), primary_key=True)) # 笔记模型 class Note(db.Model): __tablename__ = 'note' id = db.Column(db.Integer, primary_key=True, autoincrement=True) title = db.Column(db.String(100), nullable=False) content = db.Column(db.Text, nullable=False) # now()获取的是服务器第一次运行的时间 传递的是结果 # now 获取的是 每次创建模型的时间 传递的是方法 create_time = db.Column(db.DateTime, default=datetime.now) tags = db.relationship('Tag', secondary=note_tag, backref=db.backref('notes', order_by=(id.desc(), create_time.desc()))) # 标签模块 class Tag(db.Model): __tablename__ = 'tag' tag = db.Column(db.String(100), primary_key=True) text = db.Column(db.String(200), nullable=False)
FRONTUSER = 0b00010000 # 6. 管理后台用户的权限 CMSUSER = 0b00100000 # 7. 管理后台管理员的权限 ADMINER = 0b01000000 # TODO: 用户权限中间关联表 cms_users_role = db.Table( 'cms_users_role', db.Column('id', db.Integer, primary_key=True, autoincrement=True, default=1), db.Column('cms_role_id', db.Integer, db.ForeignKey('cms_role.id'), primary_key=True), db.Column('cms_user_id', db.Integer, db.ForeignKey('cms_user.id'), primary_key=True), db.Column('create_time', db.DATETIME, default=datetime.now)) # TODO: 权限角色 class CmsRole(db.Model): __tablename__ = 'cms_role' id = db.Column(db.Integer, primary_key=True, autoincrement=True) name = db.Column(db.String(30), nullable=False) desc = db.Column(db.TEXT, nullable=True)
DEVELOPER = 0b11111111 # 开发者 class LockStatus(object): """ 定义门锁状态类型 """ OPEN = 1 CLOSE = 0 user_lock = db.Table( 'user_lock', db.Column('user_id', db.Integer, db.ForeignKey('user.id'), primary_key=True), db.Column('locks_id', db.Integer, db.ForeignKey('locks.id'), primary_key=True)) class UserModel(db.Model): """ 用户数据库模型 """ __tablename__ = 'user' id = db.Column(db.Integer, primary_key=True, autoincrement=True) openID = db.Column(db.String(100), nullable=False, unique=True) nickName = db.Column(db.String(100), nullable=False) # 学生信息
# -*- coding: utf-8 -*- # @File : models.py.py # @Author: deeeeeeeee # @Date : 2017/12/11 import os from datetime import datetime from flask import current_app, url_for from exts import db, login_manager from werkzeug.security import generate_password_hash, check_password_hash from flask_login import UserMixin, AnonymousUserMixin from exts import Index_pic, Chapter_PDF, Chapter_video follows = db.Table( 'follows', db.Column('user_id', db.Integer, db.ForeignKey('user.id')), db.Column('course_id', db.Integer, db.ForeignKey('courses.id'))) class User(UserMixin, db.Model): __tablename__ = 'user' id = db.Column(db.Integer, primary_key=True, autoincrement=True) email = db.Column(db.String(50), nullable=False, index=True, unique=True) telephone = db.Column(db.String(11), nullable=False) username = db.Column(db.String(50), nullable=False) password_hash = db.Column(db.String(128), nullable=False) role_id = db.Column(db.Integer, db.ForeignKey('roles.id')) location = db.Column(db.String(64)) about_me = db.Column(db.Text()) member_since = db.Column(db.DateTime(), default=datetime.utcnow) last_seen = db.Column(db.DateTime(), default=datetime.utcnow) courses = db.relationship('Course', secondary=follows,
#encoding: utf-8 from exts import db from flask_sqlalchemy import SQLAlchemy from datetime import datetime Enroll = db.Table( 'Enroll', db.Column('userName', db.Unicode(20), db.ForeignKey('User.userName'), primary_key=True), db.Column('courseId', db.CHAR(8), db.ForeignKey('CourseInfo.courseId'), primary_key=True), ) class User(db.Model): __tablename__ = 'User' userName = db.Column(db.Unicode(20), primary_key=True) userEmail = db.Column(db.Unicode(64), nullable=False) userPhone = db.Column(db.CHAR(11), nullable=False) userPass = db.Column(db.Unicode(100), nullable=False) signUpDate = db.Column(db.DateTime, default=datetime.now(), nullable=False) lastLogin = db.Column(db.DateTime, nullable=False) studyDuration = db.Column(db.Float, nullable=False) frozenDuration = db.Column(db.Float, nullable=False) frozenReason = db.Column(db.Text) courseCount = db.relationship('CourseInfo',
from exts import db role_admin = db.Table( 'tb_role_admin', db.Column('role_id', db.Integer, db.ForeignKey('tb_role.id', ondelete='CASCADE'), primary_key=True), db.Column('admin_id', db.Integer, db.ForeignKey('tb_admin.id', ondelete='CASCADE'), primary_key=True))
from exts import db resources_relationships = db.Table( 'tb_resources_relationships', db.Column('resources_id', db.Integer, db.ForeignKey('tb_resources.id', ondelete='CASCADE'), primary_key=True), db.Column('object_id', db.Integer, db.ForeignKey('tb_postmeta.id', ondelete='CASCADE'), primary_key=True))
class User_power(object): common = 1 admin = 255 desc_temp = { common: (u'普通管理员', u'拥有管理前台用户和帖子等权限'), admin: (u'超级管理员', u'拥有所有权限,可进行任何操作'), } # 中间表 user_role_table = db.Table( 'cms_user_role', Base.metadata, db.Column('cms_role_id', db.Integer, db.ForeignKey('cms_role.id'), primary_key=True), db.Column('cms_user_id', db.Integer, db.ForeignKey('cms_user.id'), primary_key=True), ) # CMS用户权限组 class CMSRole(Base): __tablename__ = 'cms_role' id = db.Column(db.Integer, primary_key=True) name = db.Column(db.String(50), nullable=False) desc = db.Column(db.String(100)) power = db.Column(db.Integer, default=User_power.common) create_time = db.Column(db.DateTime, default=datetime.now)
from datetime import datetime from models.cms.accountmodels import CMSUser from operator import or_ # 权限表(不存储数据库的) class FrontPermission(object): PUBLIC = 0x01 VIP = 0x02 PERMISSION_MAP = {PUBLIC: ('public', '公共用户'), VIP: ('vip', 'VIP学生')} # 用户-角色多对多的关系表 user_role = db.Table( 'front_user_role', db.Column('user_id', db.String(30), db.ForeignKey('front_user.id')), db.Column('role_id', db.Integer, db.ForeignKey('front_role.id'))) # 前台用户表 class FrontUser(db.Model, BaseModel): __tablename__ = 'front_user' id = db.Column(db.String(30), primary_key=True) username = db.Column(db.String(100), nullable=False) telphone = db.Column(db.String(20), nullable=False, unique=True) email = db.Column(db.String(100), unique=True) _password = db.Column(db.String(200), nullable=False) joined_time = db.Column(db.DateTime, default=datetime.now()) gender = db.Column(db.SMALLINT, default=0) points = db.Column(db.Integer, default=0) # 积分
STUDENT = 3 class Role(db.Model): # 用户角色表 __tablename__ = 'role' # 角色名称 name = db.Column(db.String(50), nullable=False) # 角色描述 desc = db.Column(db.String(200), nullable=True) # 用户权限(主键) permission = db.Column(db.Integer, nullable=False, primary_key=True) user_club_table = db.Table( 'user_club_table', db.Column('user_id', db.Integer, db.ForeignKey('user.id')), db.Column('club_id', db.Integer, db.ForeignKey('club.id'))) class User(db.Model): # 用户信息表 __tablename__ = 'user' # 用户id id = db.Column(db.Integer, primary_key=True, autoincrement=True) # 一下是必须填写的信息 # 用户姓名 username = db.Column(db.String(50), nullable=False) # 用户学校 schoolname = db.Column(db.String(100), nullable=True) # 年龄 userage = db.Column(db.Integer, nullable=True)
# 2.管理帖子权限 POSTER= 0b00000010 # 3.管理评论权限 COMMENTER= 0b00000100 # 4.管理板块权限 BOARDER= 0b00001000 # 5.管理前台用户权限 FRONTUSER= 0b00010000 # 6.管理后台用户权限 CMSUSER= 0b00100000 # 7.管理后台管理员权限 ADMINER= 0b01000000 cms_role_user=db.Table( "cms_role_user", db.Column("cms_role_id",db.Integer,db.ForeignKey("cms_role.id"),primary_key=True), db.Column("cms_user_id",db.Integer,db.ForeignKey("cms_user.id"),primary_key=True) ) class CMSRole(db.Model): __tablename__="cms_role" id=db.Column(db.Integer,primary_key=True,autoincrement=True) name=db.Column(db.String(50),nullable=False) desc=db.Column(db.String(300),nullable=False) create_time=db.Column(db.DateTime,default=datetime.now) permissions=db.Column(db.Integer,default=CMSPermission.VISITOR) #cmsrole.(users) 权限对应用户 参考表 (cms_role_user) , 回调自己 users.(roles) 希望获得对于权限 users=db.relationship("CMSUser",secondary=cms_role_user,backref='roles')
from exts import db class User(db.Model): __tablename__ = 'user' id = db.Column(db.Integer, primary_key=True, autoincrement=True) username = db.Column(db.String(20), nullable=False) email = db.Column(db.String(50), nullable=False) article_tag_table = db.Table( 'article_tag', db.Column('article_id', db.Integer, db.ForeignKey('article.id'), primary_key=True), db.Column('tag_id', db.Integer, db.ForeignKey('tag.id'), primary_key=True)) class Article(db.Model): __tablename__ = 'article' id = db.Column(db.Integer, primary_key=True, autoincrement=True) title = db.Column(db.String(20), nullable=False) content = db.Column(db.Text) author_id = db.Column(db.Integer, db.ForeignKey('user.id')) author = db.relationship('User', backref='articles')
#encoding: utf-8 # BSD license # Written by Santiego([email protected]) from exts import db, get_site_title, exts_verify_link, judge_url_type from datetime import datetime from config import USER_CODE, APP_CONFIG from werkzeug.security import generate_password_hash, check_password_hash from flask import current_app, request import hashlib from itsdangerous import TimedJSONWebSignatureSerializer as Serializer tabel_voters = db.Table( 'votes', db.Column('voter_id', db.Integer, db.ForeignKey('user.id')), db.Column('voted_id', db.Integer, db.ForeignKey('answer.id'))) tabel_theme = db.Table( 'themes', db.Column('theme_id', db.Integer, db.ForeignKey('theme.id')), db.Column('question_id', db.Integer, db.ForeignKey('question.id'))) table_tag_to_question = db.Table( 'table_tag_to_question', db.Column('tag_id', db.Integer, db.ForeignKey('tag.id')), db.Column('question_id', db.Integer, db.ForeignKey('question.id'))) table_user_to_tag = db.Table( 'table_user_to_tag', db.Column('tag_id', db.Integer, db.ForeignKey('tag.id')), db.Column('user_id', db.Integer, db.ForeignKey('user.id')))
id = db.Column(db.Integer, primary_key=True, autoincrement=True) name = db.Column(db.String(50), nullable=False) #商品名称 goodsMt_id = db.Column(db.Integer, db.ForeignKey('goods_max_type.id')) type = db.relationship('GoodsMT_Model', backref='types') def to_dic(self): d = {'name': self.name, 'id': self.id} return d cart_goods_middle = db.Table( 'cart_goods_middle', #购物车商品中间表 db.Column('goods_id', db.Integer, db.ForeignKey('goods.id'), primary_key=True), db.Column('cart_id', db.Integer, db.ForeignKey('cart.id'), primary_key=True), db.Column('number', db.Integer, default=1)) class CartModel(db.Model): #购物车模型 __tablename__ = 'cart' id = db.Column(db.Integer, primary_key=True, nullable=False, autoincrement=True) #唯一标识 goods_id = db.Column(db.Integer, db.ForeignKey('goods.id')) #商品外键 user_id = db.Column(db.String(200),
VISITOR = 0b00000001 # 2.管理帖子权限 POSTER = 0b00000010 # 3.管理评论的权限 COMMENTER = 0b00000100 # 4.管理模块的权限 BOARDER = 0b00001000 # 5.管理前台的权限 FRONTUSER = 0b00010000 # 6.管理后台的权限 CMSUSER = 0b00100000 cms_role_user = db.Table( 'cms_role_user', db.Column("cms_role_id", db.Integer, db.ForeignKey("cms_role.id")), db.Column("cms_user_id", db.Integer, db.ForeignKey("cms_user.id")), ) class CMSRole(db.Model): __name__ = "cms_role" id = db.Column(db.Integer, primary_key=True, autoincrement=True) name = db.Column(db.String(50), nullable=False) desc = db.Column(db.String(200), nullable=False) cteate_time = db.Column(db.DateTime, default=datetime.now) permissions = db.Column(db.Integer, default=CMSPersmission.VISITOR) users = db.relationship("CMSUser",secondary=cms_role_user,backref="roles")
from exts import db from flask_sqlalchemy import * # user_user = db.Table( # 'user_user', # db.Column('user_id_following', db.Integer, db.ForeignKey('user.id'), primary_key=True), # db.Column('user_id_followed', db.Integer, db.ForeignKey('user.id'), primary_key=True) # ) article_user = db.Table( 'article_user', db.Column('article_id', db.Integer, db.ForeignKey('article.id'), primary_key=True), db.Column('user_id', db.Integer, db.ForeignKey('user.id'), primary_key=True)) essay_user = db.Table( 'essay_user', db.Column('essay_id', db.Integer, db.ForeignKey('Essays.id'), primary_key=True), db.Column('user_id', db.Integer, db.ForeignKey('user.id'), primary_key=True))
from werkzeug.security import check_password_hash from flask_login import UserMixin from utils.decorators import commit from exts import login from exts import db @login.user_loader def load_user(id): return User.query.get(str(id)) # Association table followers_table = db.Table("followers", db.Column("follower_id", db.Integer, db.ForeignKey("user.id")), db.Column("followed_id", db.Integer, db.ForeignKey("user.id")) ) class User(db.Model, UserMixin): """User table for database Notes ----- One to many relationship with `Posts`. """ # Table fields id = db.Column(db.Integer, primary_key=True) username = db.Column(db.String(20), index=True) usertag = db.Column(db.String(20), index=True)
# 2. 管理帖子、评论权限 POSTER = 0b00000010 # 3. 管理用户的权限 USER = 0b00000100 # 4. 管理板块的权限 BOARDER = 0b00001000 # # 5. 待定 # FRONTUSER = 0b00010000 # # 6. 待定 # CMSUSER = 0b00100000 # # 7. 待定 # ADMINER = 0b01000000 role_user = db.Table( 'role_user', db.Column('role_id', db.Integer, db.ForeignKey('role.id'), primary_key=True), db.Column('user_id', db.String(100), db.ForeignKey('user.id'), primary_key=True) ) class Role(db.Model): __tablename__ = 'role' id = db.Column(db.Integer, primary_key=True, autoincrement=True) name = db.Column(db.String(50), nullable=False) desc = db.Column(db.String(200), nullable=True) create_time = db.Column(db.DateTime, default=datetime.now) permissions = db.Column(db.Integer, default=Permission.VISITOR) users = db.relationship('User', secondary=role_user, backref='roles') class BannerModel(db.Model):
from exts import db term_relationships = db.Table( 'tb_term_relationships', db.Column('term_taxonomy_id',db.Integer,db.ForeignKey('tb_term_taxonomy.id',ondelete = 'CASCADE'),primary_key=True), db.Column('object_id',db.Integer,db.ForeignKey('tb_postmeta.id',ondelete = 'CASCADE'),primary_key=True) )
OPERASTOR = 1 MIDDLEOPEATER = 4 HIGHSTRATOR = 64 PERMISSION_MAP = { ADMINISTRATOR: (u'超级管理员权限', u'拥有至高无上的权利'), HIGHSTRATOR: (u'高级管理员', u'拥有管理模块的权利'), OPERASTOR: (u'普通管理员', u'可以操作前台用户,帖子等'), MIDDLEOPEATER: (u'中低级管理员', u'可以操作帖子评论的权限') } cms_user_role = db.Table( 'cms_user_role', db.Column('user_id', db.Integer, db.ForeignKey('user.id'), primary_key=True), db.Column('cmsrole_id', db.Integer, db.ForeignKey('cmsroles.id'), primary_key=True)) class CMSRoles(db.Model): __tablename__ = 'cmsroles' id = db.Column(db.Integer, primary_key=True, autoincrement=True) settime = db.Column(db.DateTime, default=datetime.datetime.now) name = db.Column(db.String(100), nullable=False) desc = db.Column(db.String(100), nullable=True) permissions = db.Column(db.Integer, default=CMSPermission.OPERASTOR, nullable=False)
# -*- coding : utf-8 -*- from app import login_manager from exts import db from datetime import datetime from flask_login import UserMixin from werkzeug.security import generate_password_hash, check_password_hash from logger import Logger logger = Logger(logger='parksys.models').getlog() sys_user_park = db.Table( 'sys_user_park', db.Column('park_info_id', db.String(64), db.ForeignKey('park_info.id'), primary_key=True), db.Column('sys_user_id', db.String(64), db.ForeignKey('sys_user.id'), primary_key=True)) class ParkInfo(db.Model): """ 定义停车场基本信息表 """ __tablename__ = 'park_info' id = db.Column(db.String(64), primary_key=True, comment='停车场ID') name = db.Column(db.String(20), nullable=False, comment='停车场名字') contact = db.Column(db.String(10), comment='联系人') mobile = db.Column(db.String(15), comment='联系电话')