class Admin(BaseModel):
    __tablename__ = 'admin'
    name = db.Column(db.String(100), unique=True)  # 管理员账号
    pwd = db.Column(db.String(100))  # 密码
    is_super = db.Column(db.SmallInteger)  # 是否为超级管理员,0为超级管理员
    role_id = db.Column(db.Integer, db.ForeignKey('role.id'))  # 所属角色
    add_time = db.Column(db.DateTime,
                         index=True,
                         default=datetime.datetime.utcnow)  # 添加时间
    adminlogs = db.relationship(
        'AdminLog', backref='admin')  # 管理员日志外键关系关联,backref互相绑定admin表
    operatelogs = db.relationship('OperateLog',
                                  backref='operatelog')  # 管理员操作日志外键关系关联
Beispiel #2
0
class Comment(db.Model):
    __tablename__ = 'comment'
    id = db.Column(db.Integer, primary_key=True, autoincrement=True)
    content = db.Column(db.Text, nullable=False)
    create_time = db.Column(db.DateTime, default=datetime.now)
    # 外键1
    question_id = db.Column(db.Integer, db.ForeignKey('question.id'))
    # 外键2
    author_id = db.Column(db.Integer, db.ForeignKey('user.id'))
    # 参数order_by = create_time.desc()表示获取question对应的comments时是按时间倒序的
    question = db.relationship('Question',
                               backref=db.backref('comments',
                                                  order_by=create_time.desc()))
    author = db.relationship('User', backref=db.backref('comments'))
Beispiel #3
0
class Tag(BaseModel):
    __tablename__ = 'tag'
    name = db.Column(db.String(100), unique=True)  # 标题
    add_time = db.Column(db.DateTime,
                         index=True,
                         default=datetime.datetime.utcnow)  # 添加时间
    movies = db.relationship('Movie', backref='tag')  # 电影外键关系关联
Beispiel #4
0
class Category(db.Model):
    id = db.Column(db.Integer, autoincrement=True, primary_key=True)
    catename = db.Column(db.String(100), unique=True)
    as_name = db.Column(db.String(20), unique=True)
    key_word = db.Column(db.String(100))
    descri = db.Column(db.String(200))
    arts = db.relationship('ArtMoel', backref='my_category', lazy=True)
Beispiel #5
0
class Movie(BaseModel):
    __tablename__ = 'movie'
    title = db.Column(db.String(255), unique=True)  # 标题
    url = db.Column(db.String(255), unique=True)  # 播放地址
    info = db.Column(db.Text)  # 简介
    logo = db.Column(db.String(255), unique=True)  # 封面
    star = db.Column(db.SmallInteger)  # 星级
    play_num = db.Column(db.BigInteger)  # 播放量
    comment_num = db.Column(db.BigInteger)  # 评论量
    tag_id = db.Column(db.Integer, db.ForeignKey('tag.id'))  # 所属标签
    area = db.Column(db.String(255))  # 上映地区
    release_time = db.Column(db.Date)  # 上映时间
    length = db.Column(db.String(100))  # 播放时长
    add_time = db.Column(db.DateTime, index=True, default=datetime.datetime.utcnow)  # 添加时间
    comments = db.relationship('Comment', backref='movie')  # 用户评论外键关系关联
    moviecollects = db.relationship('MovieCollect', backref='movie')  # 用户收藏电影外键关系关联
Beispiel #6
0
class Catalog(db.Model):
    id = db.Column(db.Integer, autoincrement=True, primary_key=True)
    category = db.Column(db.String(200))
    catename = db.Column(db.String(200))
    keypassword = db.Column(db.String(20))
    said = db.Column(db.String(200))
    articles = db.relationship('Article', backref='my_catalog', lazy=True)
Beispiel #7
0
class MyColumn(db.Model):
    id = db.Column(db.Integer, autoincrement=True, primary_key=True)
    name = db.Column(db.String(32), unique=True)                #名称
    other_name = db.Column(db.String(32))                       #别名
    key_word = db.Column(db.String(32))                         #关键字
    desc = db.Column(db.String(255))                            #描述

    # 文章反查
    articles = db.relationship('Article',backref='column',lazy=True)
Beispiel #8
0
class Article(db.Model):
    id = db.Column(db.Integer, primary_key=True, autoincrement=True)
    title = db.Column(db.String(200), unique=True)
    context = db.Column(db.String(5000))
    date = db.Column(db.DateTime, default='2018-10-12 11:12:40')
    tag = db.Column(db.String(50))
    press = db.Column(db.Integer, default=0)
    myclassify = db.Column(db.Integer, db.ForeignKey(Classify.id))
    my_press = db.relationship('Mypress', backref='my_article', lazy=True)
Beispiel #9
0
class Classify(db.Model):
    id = db.Column(db.Integer, primary_key=True, autoincrement=True)
    name = db.Column(db.String(120), unique=True)
    mycount = db.Column(db.Integer, default=0)
    another_name = db.Column(db.String(120), unique=True)
    articles = db.relationship('Article', backref='my_classify', lazy=True)

    def __str__(self):
        return self.name
Beispiel #10
0
class Artical(db.Model):
    artical_id = db.Column(db.Integer, primary_key=True, autoincrement=True)
    artical_title = db.Column(db.String(100), unique=True)
    artical_content = db.Column(db.Text())
    artical_keywords = db.Column(db.String(100))
    art_descrip = db.Column(db.Text())
    artical_tag = db.Column(db.String(100))
    class_id = db.Column(db.Integer, db.ForeignKey(Classfy.class_id))
    clsfy = db.relationship('Classfy', backref='articals', lazy=True)
Beispiel #11
0
class Role(BaseModel):
    __tablename__ = 'role'
    name = db.Column(db.String(100), unique=True)  # 角色名称
    auths = db.Column(db.String(600))  # 权限列表
    add_time = db.Column(db.DateTime,
                         index=True,
                         default=datetime.datetime.utcnow)  # 添加时间
    admins = db.relationship('Admin',
                             backref='role')  # 管理员外键关系关联,backref互相绑定role表
Beispiel #12
0
class Classification(db.Model):
    __tablename__ = 'classification'  # 表名
    id = db.Column(db.Integer, primary_key=True, autoincrement=True)
    name = db.Column(db.String(20), unique=True)
    alias = db.Column(db.String(20))
    keyword = db.Column(db.String(20))
    content = db.Column(db.String(1000))
    parentnode = db.Column(db.String(20))
    num = db.Column(db.Integer, default=0)
    articles = db.relationship('Article', backref='article', lazy='dynamic')
Beispiel #13
0
class Question(db.Model):
    __tablename__ = 'question'
    id = db.Column(db.Integer, primary_key=True, autoincrement=True)
    title = db.Column(db.String(100), nullable=False)
    desc = db.Column(db.Text, nullable=False)
    # 注意是:datetime.now。now是每次创建一个模型的时候都获取当前时间,now()是服务器第一次运行的时间
    create_time = db.Column(db.DateTime, default=datetime.now)
    # 使用外键,db.ForeignKey('user.id')指定外键用到的是user表的id字段
    author_id = db.Column(db.Integer, db.ForeignKey('user.id'))
    # 建立关系屬性,参数1表示要引用的模型,参数2指定反转时要用到的属性,就是User模型通过哪个属性来获取当前用户发布的所有问题
    author = db.relationship('User', backref=db.backref('questions'))
Beispiel #14
0
class Classification(db.Model):
    id = db.Column(db.Integer, autoincrement=True, primary_key=True)
    name = db.Column(db.String(100), unique=True)
    alias = db.Column(db.String(100))  # 别名
    keyword = db.Column(db.String(100))  # 关键字
    parentnode = db.Column(db.String(50))  # 父节点
    describe = db.Column(db.Text)  # 描述
    # 关系,关联文章
    contents = db.relationship('Content',
                               backref='my_classification',
                               lazy='dynamic')
Beispiel #15
0
class Classification(db.Model):
    id = db.Column(db.Integer, primary_key=True, autoincrement=True)
    name = db.Column(db.String(100), unique=True)
    alias = db.Column(db.String(100))
    keyword = db.Column(db.String(100))
    parentnode = db.Column(db.String(100))
    describe = db.Column(db.Text)
    # 建立一个关系 是让2个模型建立关系,不会在数据库中创建字段的
    # 这里是反向关联,用分类中的属性联系到文章
    contents = db.relationship("Content",
                               backref="my_classification",
                               lazy="dynamic")
Beispiel #16
0
class Category(db.Model):  # Classification
    __tablename__ = 'category'  # 表名
    id = db.Column(db.Integer, primary_key=True, autoincrement=True)
    # 分类名
    name = db.Column(db.String(50), unique=True)
    # 分类别名
    alias = db.Column(db.String(50))
    # 关键字
    keyword = db.Column(db.String(50))
    # 内容
    content = db.Column(db.Text)
    # 父节点
    parentnode = db.Column(db.String(50))
    # 文章类外键
    num = db.Column(db.Integer, default=0)
    articles = db.relationship('Article', backref='article', lazy='dynamic')
Beispiel #17
0
class ArticleClass(db.Model):
    id = db.Column(db.Integer, autoincrement=True, primary_key=True)
    name = db.Column(db.String(20), unique=True)
    articles = db.relationship('Article', backref='my_article', lazy=True)
Beispiel #18
0
class Category(db.Model):
    id = db.Column(db.Integer, primary_key=True, autoincrement=True)
    name = db.Column(db.String(20))
    alias = db.Column(db.String(20))
    count = db.Column(db.Integer)
    articles = db.relationship("Article", backref="c", lazy=True)
Beispiel #19
0
class Sort(db.Model):
    id = db.Column(db.Integer, autoincrement=True, primary_key=True)
    name = db.Column(db.String(100), unique=True)
    othername = db.Column(db.String(100), unique=True)
    num = db.Column(db.Integer)
    ars = db.relationship('Article', backref="s", lazy=True)
Beispiel #20
0
class BlogType(db.Model):
    id = db.Column(db.Integer, autoincrement=True, primary_key=True)
    typename = db.Column(db.String(20))
    blogs = db.relationship("Blog", backref="my_blogtype", lazy=True)
Beispiel #21
0
class CityLetter(db.Model):
    id = db.Column(db.Integer, primary_key=True, autoincrement=True)
    letter = db.Column(db.String(3))
    citys = db.relationship('City', backref='city_letter', lazy='dynamic')
Beispiel #22
0
class Lanmu(db.Model):
    id = db.Column(db.Integer,primary_key=True,autoincrement=True)
    name = db.Column(db.String(100),unique=True)
    another_name = db.Column(db.String(100),unique=True)
    articles = db.relationship('Article',backref='my_lanmu',lazy='dynamic')