class AlbumData(db.Model): __tablename__ = 'album_data' id = db.Column(db.Integer, primary_key=True) classification = db.Column(db.Integer) # 资源分类 identification = db.Column(db.String(255)) # 唯一身份标识 ''' 1 = 番剧 2 = OST 3 = MMD 4 = Live2D ''' name = db.Column(db.Text) # 资源标题 cover = db.Column(db.String(255)) # 封面图 introduce = db.Column(db.Text) # 介绍 status = db.Column(db.Integer) # 上下架状态 ''' 1 = 正常 2 = 下架 ''' is_delete = db.Column(db.Boolean, default=False) # 是否删除 show_index = db.Column(db.Boolean, default=False) # 首页展示 relation_bangumi_id = db.Column(db.Integer) # 关联番剧id update_time = db.Column(db.DateTime, index=True, default=datetime.now, onupdate=datetime.now) # 更新时间 create_time = db.Column(db.DateTime, index=True, default=datetime.now) # 创建时间
class BangumiAnime(db.Model): __tablename__ = 'bangumi_anime' id = db.Column(db.Integer, primary_key=True) classification = db.Column(db.Integer) # 视频分类 identification = db.Column(db.String(255)) # 唯一身份标识 ''' 1 = 番剧 2 = 剧场版 3 = OVA 4 = SP ''' name = db.Column(db.String(255)) # 番剧名 setscount = db.Column(db.Integer) # 集数 introduce = db.Column(db.Text) # 介绍 cover = db.Column(db.Text) # 封面 upstatus = db.Column(db.Boolean) # 连载状态 True 连载中 False 以完结 staff = db.Column(db.Text) # STAFF内容 station_play = db.Column(db.Boolean) # 是否支持站内播放 openplay_time = db.Column(db.DateTime) # 开播时间 status = db.Column(db.Integer) # 状态 ''' 1 = 正常 2 = 下架 ''' sort = db.Column(db.Integer, default=0) # 权重 update_time = db.Column(db.DateTime, index=True, default=datetime.now, onupdate=datetime.now) # 更新时间 create_time = db.Column(db.DateTime, index=True, default=datetime.now) # 创建时间
class PhotoData(db.Model): __tablename__ = 'photo_data' id = db.Column(db.Integer, primary_key=True) # id upload_user = db.Column(db.Integer) # 上传用户 file = db.Column(db.Text) # 文件 title = db.Column(db.String(255)) # 标题 info = db.Column(db.Text) # 介绍 category = db.Column(db.Integer) # 类目 ''' 1 : 原创 2 : Pixiv 3 : Cospaly ''' pixiv_author = db.Column(db.String(255)) # pixiv 作者 verify = db.Column(db.Integer) # 审核 ''' 1 : 通过审核 2 : 未审核 3 : 退回 ''' update_time = db.Column(db.DateTime, index=True, default=datetime.now, onupdate=datetime.now) # 更新时间 create_time = db.Column(db.DateTime, index=True, default=datetime.now) # 创建时间
class ArticleData(db.Model): __tablename__ = 'article_data' id = db.Column(db.Integer, primary_key=True) classification = db.Column(db.Integer) # 分类 identification = db.Column(db.String(255)) # 唯一身份标识 ''' 1 = 官方资讯 2 = 手办 ''' title = db.Column(db.String(255)) # 标题 cover = db.Column(db.String(255)) # 封面图 introduce = db.Column(db.String(255)) # 简介 content = db.Column(LONGTEXT) # 文章内容 status = db.Column(db.Integer) # 上下架状态 ''' 1 = 正常 2 = 下架 ''' sort = db.Column(db.Integer, default=0) # 权重 show_index = db.Column(db.Boolean, default=False) # 首页展示 is_delete = db.Column(db.Boolean, default=False) # 是否删除 update_time = db.Column(db.DateTime, index=True, default=datetime.now, onupdate=datetime.now) # 更新时间 create_time = db.Column(db.DateTime, index=True, default=datetime.now) # 创建时间
class CvData(db.Model): __tablename__ = 'cv_data' id = db.Column(db.Integer, primary_key=True) people_name = db.Column(db.String(255)) # 人名 head = db.Column(db.String(255)) # 头像 isdelete = db.Column(db.Boolean, default=False) # 删除 update_time = db.Column(db.DateTime, index=True, default=datetime.now, onupdate=datetime.now) # 更新时间 create_time = db.Column(db.DateTime, index=True, default=datetime.now) # 创建时间
class User(db.Model): __tablename__ = 'user' id = db.Column(db.Integer, primary_key=True) reg_time = db.Column(db.DateTime) # 注册时间 token = db.Column(db.Text) # 登录token 需要开启Token认证登录的时候才需要解开注释 username = db.Column(db.String(255)) email = db.Column(db.String(255)) password = db.Column(db.Text) head = db.Column(db.Text) userstatus = db.Column(db.Integer) '''
class VideoData(db.Model): __tablename__ = 'video_data' id = db.Column(db.Integer, primary_key=True) upload_userid = db.Column(db.Integer) # 上传者用户id verify_type = db.Column(db.Integer) # 审核状态 ''' 1 审核通过 2 等待审核 3 审核不合格退回 4 被管理员删除 ''' verify_falseinfo = db.Column(db.String(255)) # 审核不通过的原因 classification = db.Column(db.Integer) # 视频分类 ''' 1 MAD·AMV 2 MMD 3 技术宅 4 其他 10 pv ''' content_classification = db.Column(db.Integer) # 视频内容分类 ''' 1 静止系 2 剪辑向 3 混合向 ''' identification = db.Column(db.String(255)) # 唯一身份标识 title = db.Column(db.String(255)) # 视频标题 cover = db.Column(db.Text) # 封面 introduce = db.Column(db.Text) # 介绍 source_type = db.Column(db.Integer) # 来源类型 ''' 1 B站 2 A站 10 直传 ''' original_type = db.Column(db.Integer) # 投稿类型 ''' 1 原创 2 转载 ''' original_url = db.Column(db.String(255)) # 转载地址 original_author = db.Column(db.String(255)) # 原作者名称 videoloadurl = db.Column(db.Text) # 视频加载地址 show_index = db.Column(db.Boolean, default=False) # 首页展示 update_time = db.Column(db.DateTime, index=True, default=datetime.now, onupdate=datetime.now) # 更新时间 create_time = db.Column(db.DateTime, index=True, default=datetime.now) # 创建时间 '''
class BangumiPlayurl(db.Model): __tablename__ = 'bangumi_playurl' id = db.Column(db.Integer, primary_key=True) url = db.Column(db.String(255)) # url source_name = db.Column(db.String(255)) # 来源名字 bangumi_id = db.Column(db.Integer) # 番剧id sort = db.Column(db.Integer) # 权重 update_time = db.Column(db.DateTime, index=True, default=datetime.now, onupdate=datetime.now) # 更新时间 create_time = db.Column(db.DateTime, index=True, default=datetime.now) # 创建时间
class AlbumDowurl(db.Model): __tablename__ = 'album_dowurl' id = db.Column(db.Integer, primary_key=True) album_id = db.Column(db.Integer) # 资源id dowsource_name = db.Column(db.String(255)) # 下载资源来源名 name = db.Column(db.String(255)) # 资源名 dowinfo = db.Column(db.Text) # 下载信息 feedback = db.Column(db.Integer, default=0) # 反馈次数统计 管理员确认资源没问题后恢复0 update_time = db.Column(db.DateTime, index=True, default=datetime.now, onupdate=datetime.now) # 更新时间 create_time = db.Column(db.DateTime, index=True, default=datetime.now) # 创建时间
class BangumiVideo(db.Model): __tablename__ = 'bangumi_video' id = db.Column(db.Integer, primary_key=True) bangumi_id = db.Column(db.Integer) # 所属番剧id playsource_url = db.Column(db.String(255)) # 播放源地址 title = db.Column(db.String(255)) # 集标题 sort = db.Column(db.Integer) # 集数 cover = db.Column(db.Text) # 封面 update_time = db.Column(db.DateTime, index=True, default=datetime.now, onupdate=datetime.now) # 更新时间 create_time = db.Column(db.DateTime, index=True, default=datetime.now) # 创建时间
class AccountUser(db.Model): __tablename__ = 'account_user' id = db.Column(db.Integer, primary_key=True) token = db.Column(db.Text) email = db.Column(db.Text) head = db.Column(db.Text) username = db.Column(db.String(255)) password = db.Column(db.Text) status = db.Column(db.Integer, default=0) ''' 0 = 未进行邮箱验证 1 = 正常用户 2 = 受限用户 3 = 禁止登录 ''' update_time = db.Column(db.DateTime, index=True, default=datetime.now, onupdate=datetime.now) # 更新时间 create_time = db.Column(db.DateTime, index=True, default=datetime.now) # 创建时间 msg_remind = db.Column(db.Boolean) newreply_count = db.Column(db.Integer)
class AccountAdmin(BaseModel, AccountInfo, BaseModelAuth, db.Model): """管理员表""" __tablename__ = 'account_admin' remarks = db.Column(db.String(255)) # 账户备注 jurisdiction = db.Column(db.Integer, default=1) # 管理员角色 1 高级管理员 2 一般管理员 def toDict(self): return dict(remarks=self.remarks, jurisdiction=self.jurisdiction, **self._base(), **self._BaseModelAuth_Base(), **self._AccountInfo_Base()) def createadmin(self, username, email, password): """新增管理员(username: 用户名,email: 登录邮箱,password: 密码)""" self.email = email self.username = username self.password = generate_password_hash(password) self.jurisdiction = 1 self._add() self._commit() return self
def demo(): db.Column(db.Integer, default=0) db.Column(db.Text) db.Column(db.String(255)) db.Column(LONGTEXT) db.Column(db.DateTime) db.Column(db.Boolean, default=False) db.Column(db.DateTime, default=datetime.now, onupdate=datetime.now)
class ApiMoreArticle(db.Model): __tablename__ = 'api-more-article' id = db.Column(db.Integer, primary_key=True) line_type = db.Column(db.Integer) ''' 0 = 站内文章 1 = 站外链接 ''' sort = db.Column(db.Integer) # 排序 link = db.Column(db.String(255)) # 地址 articleid = db.Column(db.Integer) # 文章id introduce = db.Column(db.String(255)) # 介绍 title = db.Column(db.String(255)) # 标题 cover = db.Column(db.String(255)) # 封面 status = db.Column(db.Integer) # 是否生效 '''
class Photo(db.Model): __tablename__ = 'photo' id = db.Column(db.Integer, primary_key=True) sort = db.Column(db.Integer) # 权重 link = db.Column(db.String(255)) # 地址 status = db.Column(db.Integer) # 是否生效 '''
class Article(db.Model): __tablename__ = 'article' id = db.Column(db.Integer, primary_key=True) upload_userid = db.Column(db.Integer) upload_time = db.Column(db.DateTime) # 上传时间 article_type = db.Column(db.Integer) ''' 1 = 作品分类 2 = 文章分类 3 = 项目分类 ''' content_type = db.Column(db.Integer) ''' 作品{ 1 设计 2 视频 } 文章{ } 项目{ } ''' title = db.Column(db.String(255)) cover = db.Column(db.String(255)) introduce = db.Column(db.String(255)) content = db.Column(LONGTEXT) # content status = db.Column(db.Integer) ''' 0 = 正常 1 = 下架 ''' index = db.Column(db.Boolean, default=False) ''' true的为在首页展示 ''' is_delete = db.Column(db.Boolean, default=False) '''
class Article(db.Model): __tablename__ = 'article' id = db.Column(db.Integer, primary_key=True) upload_userid = db.Column(db.Integer) upload_time = db.Column(db.DateTime) # 注册时间 article_type = db.Column(db.Integer) ''' 1 = 作品分类 2 = 文章分类 3 = 项目分类 ''' title = db.Column(db.String(255)) cover = db.Column(db.String(255)) introduce = db.Column(db.String(255)) content = db.Column(db.Text) # content status = db.Column(db.Integer) '''
class CommentMain(db.Model): __tablename__ = 'comment_main' id = db.Column(db.Integer, primary_key=True) masterid = db.Column(db.String(255)) # 唯一值 用做评论标识 senduser_id = db.Column(db.Integer) # 发送用户id comment_type = db.Column(db.Integer) # 评论类型 1 主评论 2 子评论 content = db.Column(db.Text) # 内容 mainid = db.Column(db.Integer) # 主评论id reply_comment_id = db.Column(db.Integer) # 回复评论id is_delete = db.Column(db.Boolean, default=False) # 是否被删除 deleteinfo = db.Column(db.String(255)) # 删除原因 subcomment_type = db.Column(db.Boolean, default=False) # 是否存在二级评论 update_time = db.Column(db.DateTime, index=True, default=datetime.now, onupdate=datetime.now) # 更新时间 create_time = db.Column(db.DateTime, index=True, default=datetime.now) # 创建时间 '''
class Account(db.Model): __tablename__ = 'account' id = db.Column(db.Integer, primary_key=True) # Token认证 token = db.Column(db.Text) # 登录token # 账户信息 reg_time = db.Column(db.DateTime) # 注册时间 email = db.Column(db.String(255)) # 注册邮箱 username = db.Column(db.String(255)) # 账户名 profile = db.Column(db.String(255)) # 头像 # 账户 password = db.Column(db.String(255)) # 密码 account_group = db.Column(db.Integer) # 用户组 ''' 1 = 站长 2 = 游客 ''' status = db.Column(db.Integer) # 账户状态 '''
class BangumiRolecv(db.Model): __tablename__ = 'bangumi_rolecv' id = db.Column(db.Integer, primary_key=True) role_name = db.Column(db.String(255)) # 角色名 bangumi_id = db.Column(db.Integer) # 所属番剧id cv_id = db.Column(db.Integer) # cv_id sort = db.Column(db.Integer) # 权重 update_time = db.Column(db.DateTime, index=True, default=datetime.now, onupdate=datetime.now) # 更新时间 create_time = db.Column(db.DateTime, index=True, default=datetime.now) # 创建时间
class AccountAdmin(db.Model): __tablename__ = 'account_admin' id = db.Column(db.Integer, primary_key=True) token = db.Column(db.Text) email = db.Column(db.Text) head = db.Column(db.Text) username = db.Column(db.String(255)) password = db.Column(db.Text) update_time = db.Column(db.DateTime, index=True, default=datetime.now, onupdate=datetime.now) # 更新时间 create_time = db.Column(db.DateTime, index=True, default=datetime.now) # 创建时间
class AccountInfo(object): """用户表模型基类 为用户表和管理表继承相同字段和公共方法 head, account, email, phone, password, username, """ account = db.Column(db.Text) # 账户 a-z0-9A-z email = db.Column(db.Text) # 用户邮箱 phone = db.Column(db.Integer) # 用户手机 head = db.Column(db.Text) # 头像 password = db.Column(db.Text) # 密码 username = db.Column(db.String(255)) # 用户名 def _set_new_password(self, plaintext): """设置新的密码""" newpassword = generate_password_hash(plaintext) self.password = newpassword def _is_correct_password(self, plaintext): """判断密码 正确返回True""" if check_password_hash(self.password, plaintext): return True @property def userhead(self): """用户头像""" path = config[ENV].STATIC_LOADPATH + BaseConfig.UPLOADFILE_CONFIG[ 'userhead'] if self.head: return path + self.head return path + 'default-userhead.jpg' def _AccountInfo_Base(self): """返回模型基类参数""" return dict(username=self.username, head=self.userhead, email=self.email, account=self.account)