class UserDetail(db.Model, BaseModel): id = db.Column(db.Integer, primary_key=True, autoincrement=True) birthday = db.Column(db.Date) address = db.Column(db.String(200)) qq = db.Column(db.String(15)) signature = db.Column(db.String(200)) quesstion = db.Column(db.String(100)) answer = db.Column(db.String(200)) grade = db.Column(db.String(100)) uid = db.Column(db.Integer, db.ForeignKey('bbs_user.uid', ondelete='CASCADE')) #级联删除 __tablename__ = 'bbs_userdetail'
class User(BaseModel, db.Model): """用户""" __tablename__ = "info_user" id = db.Column(db.Integer, primary_key=True) # 用户编号 nick_name = db.Column(db.String(32), unique=True, nullable=False) # 用户昵称 password_hash = db.Column(db.String(128), nullable=False) # 加密密码 mobile = db.Column(db.String(11), unique=True, nullable=False) # 手机号 avatar_url = db.Column(db.String(256)) #用户头像路径 last_login = db.Column(db.DateTime, default=datetime.now()) is_admin = db.Column(db.Boolean, default=False) signature = db.Column(db.String(512)) # 用户签名 gender = db.Column(db.Enum("MAN" "WOMAN"), default="MAN")
class MovieUserModel(ModelBase): username = db.Column(db.String(32), unique=True) _password = db.Column(db.String(256)) phone = db.Column(db.Integer, unique=True) is_delete = db.Column(db.Boolean, default=False) permission = db.Column(db.Integer, default=PERMISSION_NONE) @property def password(self): raise Exception("can't access") @password.setter def password(self, password_value): self._password = generate_password_hash(password_value) def check_password(self, password_value): return check_password_hash(self._password, password_value)
class CinemaUser(BaseModel): username = db.Column(db.String(32), unique=True) _password = db.Column(db.String(256)) phone = db.Column(db.String(32), unique=True) is_delete = db.Column(db.Boolean, default=False) @property def password(self): raise Exception("can't access") @password.setter def password(self, password_value): self._password = generate_password_hash(password_value) def check_password(self, password_value): return check_password_hash(self._password, password_value)
class Province(BaseModel): """省份""" __tablename__ = "tbl_province" name = db.Column(db.String(20), nullable=False) # itemplans = db.relationship("ItemPlan", backref="province") # 省份下的所有项目 def __str__(self): return self.name
class Student(db.Model): id = db.Column(db.Integer, primary_key=True, autoincrement=True) s_name = db.Column(db.String(15), unique=True) # 把s_password变成私有属性 _s_password = db.Column(db.String(256)) s_phone = db.Column(db.String(32), unique=True) @property def s_password(self): raise Exception("Error Action Password Cant be access") @s_password.setter def s_password(self, value): self._s_password = generate_password_hash(value) def check_password(self, password): return check_password_hash(self._s_password, password)
class ViewerUser(BaseModel): v_phone = db.Column(db.String(32), unique=True) _v_password = db.Column(db.String(256)) v_permission = db.Column(db.Integer, default=PERMISSION_READ & PERMISSION_WRITE) @property def v_password(self): raise Exception("can't access") @v_password.setter def v_password(self, password): self._v_password = generate_password_hash(password) def check_password(self, password): return check_password_hash(self._v_password, password) def check_permission(self, permission): return self.v_permission & permission == permission
class Users(db.Model, BaseModel): u_id = db.Column(db.Integer, autoincrement=True, primary_key=True) u_name = db.Column(db.String(16), unique=True) _u_password = db.Column(db.String(256)) u_permission = db.Column(db.Integer, default=1) @property def u_password(self): return self._u_password @u_password.setter def u_password(self, password): self._u_password = generate_password_hash(password) def verify_password(self, password): return check_password_hash(self._u_password, password)
class Permission(db.Model): p_id = db.Column(db.Integer, autoincrement=True, primary_key=True) p_name = db.Column(db.String(16), unique=True) p_er = db.Column(db.String(16), unique=True) roles = db.relationship('Role', secondary=r_p, backref='permission', lazy=True) __tablename__ = 'permission' def __init__(self, p_name, p_er): self.p_name = p_name self.p_er = p_er def save(self): db.session.add(self) db.session.commit()
class Student(db.Model): s_id = db.Column(db.Integer, autoincrement=True, primary_key=True) s_name = db.Column(db.String(16), unique=True) s_sex = db.Column(db.Integer) grade_id = db.Column(db.Integer, db.ForeignKey('grade.g_id'), nullable=True) __tablename__ = 'student' def __init__(self, s_name, s_sex, grade_id): self.s_name = s_name self.s_sex = s_sex self.grade_id = grade_id def save(self): db.session.add(self) db.session.commit()
class Facility(BaseModel, db.Model): """设施信息, 房间规格等信息""" __tablename__ = "ihome_facility" id = db.Column(db.Integer, primary_key=True) # 设施编号 name = db.Column(db.String(32), nullable=False) # 设施名字 css = db.Column(db.String(30), nullable=True) # 设施展示的图标 def to_dict(self): return { 'id': self.id, 'name': self.name, 'css': self.css } def to_house_dict(self): return {'id': self.id}
class User(db.Model): uid = db.Column(db.Integer, primary_key=True, autoincrement=True) username = db.Column(db.String(30), nullable=False, unique=True) password = db.Column(db.String(128), nullable=False) phone = db.Column(db.String(11)) email = db.Column(db.String(200)) portrait = db.Column(db.String(300)) regtime = db.Column(db.DateTime) isforbid = db.Column(db.Boolean, default=False) __tablename__ = 'user'
class Article(db.Model): aid = db.Column(db.Integer, primary_key=True, autoincrement=True) title = db.Column(db.String(100), nullable=True) content = db.Column(db.String(10000)) create_time = db.Column(db.DateTime, default=datetime.now) cid = db.Column(db.Integer, db.ForeignKey("category.cid", ondelete="CASCADE")) hits = db.Column(db.Integer, default=0) replies = db.Column(db.Integer, default=0) picture = db.Column(db.String(300)) __tablename__ = 'article'
class Reply(db.Model, BaseModel): rid = db.Column(db.Integer, primary_key=True, autoincrement=True) content = db.Column(db.String(1000)) istop = db.Column(db.Integer, default=0) # 置顶 isdel = db.Column(db.SmallInteger, default=0) # 删除 0表示未删除,1表示删除 isblock = db.Column(db.SmallInteger, default=0) createtime = db.Column(db.DateTime, default=datetime.now) uid = db.Column(db.Integer, db.ForeignKey('bbs_user.uid')) tid = db.Column(db.Integer, db.ForeignKey('bbs_posts.id', ondelete='CASCADE')) __tablename__ = 'bbs_reply'
class User(db.Model): __tablename__ = 'user' uid = db.Column(db.Integer, primary_key=True) username = db.Column(db.String(30), nullable=False, unique=True) password = db.Column(db.String(128), nullable=False) phone = db.Column(db.String(11)) email = db.Column(db.String(200)) portrait = db.Column(db.String(300)) regtime = db.Column(db.DateTime) isforbid = db.Column(db.Integer, server_default=db.FetchedValue())
class UserModel(BaseModel, db.Model): id = db.Column(db.Integer, primary_key=True, autoincrement=True) u_name = db.Column(db.String(16), unique=True) u_password = db.Column(db.String(256)) u_email = db.Column(db.String(64), unique=True) is_active = db.Column(db.Boolean, default=False) is_delete = db.Column(db.Boolean, default=False) u_permission = db.Column(db.Integer, default=1)
class Notice(BaseModel): id = db.Column(db.String(32), primary_key=True) title = db.Column(db.String(128)) content = db.Column(db.String(1024)) type = db.Column(db.String(32)) creator = db.Column(db.String(32)) date = db.Column(db.DateTime) is_delete = db.Column(db.Boolean, default=False)
class Pet(db.Model): petid = db.Column(db.Integer, primary_key=True) #宠物编号 petname = db.Column(db.String(100)) #宠物姓名 starvation = db.Column(db.String(100)) #饥饿状态 birth = db.Column(db.DateTime) #出生日期 FeedTime = db.Column(db.DateTime) #上次喂食时间 Feedinginterval = db.Column(db.Integer) #喂食间隔时间 petpic = db.Column(db.String(100)) # 个人图片
class User(BaseModel): id = db.Column(db.String(16), primary_key=True, unique=True) username = db.Column(db.String(32), unique=True) password = db.Column(db.String(256)) phone = db.Column(db.String(16)) name = db.Column(db.String(64)) status = db.Column(db.Boolean, default=False) is_delete = db.Column(db.Boolean, default=False)
class Tbsubmit(db.Model): tbid = db.Column(db.INTEGER, primary_key=True) title = db.Column(db.String(200)) joumal = db.Column(db.String(200)) gene = db.Column(db.String(200)) email = db.Column(db.String(200)) mutation = db.Column(db.String(200)) more = db.Column(db.String(500))
class UserModel(db.Model): id = db.Column(db.Integer, primary_key=True, autoincrement=True) u_name = db.Column(db.String(32), unique=True) u_password = db.Column(db.String(256)) u_email = db.Column(db.String(64), unique=True) u_active = db.Column(db.Boolean, default=False) u_token = db.Column(db.String(256)) u_promission = db.Column(db.Integer, default=1)
class BaseModel(BaseModelNoPrimary): __abstract__ = True id = db.Column(db.Integer, primary_key=True, autoincrement=True) is_delete = db.Column(db.Boolean, default=False) def delete_logic(self): self.is_delete = True try: db.session.add(self) db.session.commit() except Exception as e: print(e) return False else: return True
class Item(db.Model): __tablename__ = 'item' id = db.Column(db.Integer, primary_key=True, autoincrement=True) name = db.Column(db.String(64), nullable=False) total = db.Column(db.Integer, nullable=False) price = db.Column(db.String(32), nullable=False) img = db.Column(db.String(64), default='img/default_item.png') detail_info = db.Column(db.Text, default='None info...') view_num = db.Column(db.Integer, default=0) requests = db.relationship('Request', backref='requests') create_time = db.Column(db.String(32), nullable=False, default=str(datetime.now())[:str(datetime.now()).rfind('.'):])
class Course(db.Model): cou_id = db.Column(db.Integer, primary_key=True, autoincrement=True) # 课程名 cou_name = db.Column(db.String(256), unique=True) # 课程图片 cou_img = db.Column(db.String(128), default=None) # 几人正在训练 cou_peple_num = db.Column(db.Integer) # 参加人数 cou_join_pep = db.Column(db.String(32)) # 0为全部,1为健身,2为跑步,3为瑜伽,4运动课程、5健身计划 cou_group_id = db.Column(db.Integer) # 课程时长 cou_time = db.Column(db.String(32)) # 消耗卡路里 cou_kli = db.Column(db.String(32)) # 评级 cou_rate = db.Column(db.String(32)) cou_user = db.Column(db.ForeignKey('user.u_id'))
class AdminUser(BaseModel): username = db.Column(db.String(32), unique=True) _password = db.Column(db.String(256)) is_delete = db.Column(db.Boolean, default=False) permission = db.Column(db.Integer, default=PERMISSION_NONE) is_super = db.Column(db.Boolean, default=False) @property def password(self): raise Exception("can't access") @password.setter def password(self, password_value): self._password = generate_password_hash(password_value) def check_password(self, password_value): return check_password_hash(self._password, password_value) def check_permission(self, permission): return self.is_super or permission & self.permission == permission
class Post(db.Model, ModelBase): id = db.Column(db.Integer, primary_key=True, autoincrement=True) title = db.Column(db.String(128)) body = db.Column(db.Text) pub_date = db.Column(db.DateTime) category_id = db.Column(db.Integer, db.ForeignKey('category.id')) category = db.relationship('Category', backref=db.backref('posts', lazy='dynamic')) def __init__(self, title, body, category, pub_date=None): self.title = title self.body = body if pub_date is None: pub_date = datetime.utcnow() self.pub_date = pub_date self.category = category def __repr__(self): # 自定义输出实例化对象的信息 return '<Posts %r>' % self.title
class Article(db.Model): __tablename__ = 'article' aid = db.Column(db.Integer, primary_key=True) title = db.Column(db.String(500), nullable=False) content = db.Column(db.String(10000)) create_time = db.Column(db.DateTime, server_default=db.FetchedValue()) cid = db.Column(db.ForeignKey('category.cid', ondelete='CASCADE'), index=True) hits = db.Column(db.Integer, server_default=db.FetchedValue()) comments = db.Column(db.Integer, server_default=db.FetchedValue()) picture = db.Column(db.String(300)) category = db.relationship('Category', primaryjoin='Article.cid == Category.cid', backref='articles') tid = db.Column(db.Integer)
class Blog(BaseModel, db.Model): """博客""" __tablename__ = "info_blog" id = db.Column(db.Integer, primary_key=True) # 用户编号 title = db.Column(db.String(256), nullable=False) # 标题 source = db.Column(db.String(64), nullable=False) # 来源 digest = db.Column(db.String(512), nullable=False) # 摘要 index_image_url = db.Column(db.String(256)) # 博客列表图片路径 category_id = db.Column(db.Integer, db.ForeignKey("info_category.id")) user_id = db.Column(db.Integer, db.ForeignKey("info_user.id")) # 当前blog的作者id status = db.Column(db.Integer, default=0) # 当前blog状态 如果为0代表审核通过,1代表审核中,-1代表审核不通过 reason = db.Column(db.String(256)) # 未通过原因,status = -1 的时候使用 # 当前新闻的所有评论 comments = db.relationship("Comment", lazy="dynamic")
class UserModel(db.Model): id = db.Column(db.Integer, primary_key=True, autoincrement=True) username = db.Column(db.String(200), unique=True) password = db.Column(db.String(250), unique=True) smallname = db.Column(db.String(200), unique=True) phone = db.Column(db.String(200), unique=True) address = db.Column(db.String(200), unique=True) icon = db.Column(db.LargeBinary(length=2048)) __name__ = "App_usermodel"
class User(BaseModel, db.Model): u_id = db.Column(db.Integer, primary_key=True, autoincrement=True) u_name = db.Column(db.String(16), unique=True) _u_password = db.Column(db.String(256)) is_delete = db.Column(db.Boolean, default=False) u_permission = db.Column(db.Integer, default=0) @property def u_password(self): return self._u_password @u_password.setter def u_password(self, password): self._u_password = generate_password_hash(password) def verify_password(self, password): return check_password_hash(self._u_password, password) def check_permission(self, permission): return self.u_permission & permission == permission