コード例 #1
0
class User(db.Model):
    # name 表示列名
    # __tablename__=''
    # index 索引
    uid = db.Column(db.Integer, primary_key=True, autoincrement=True)
    username = db.Column(db.String(64),
                         index=True,
                         unique=True,
                         nullable=False)
    password = db.Column(db.String(100), nullable=False)
    age = db.Column(db.Integer)
    create_date = db.Column(db.DateTime)
    id_delete = db.Column(db.Boolean)
    price = db.Column(db.Numeric(7, 2))
    """
    重要参数
    argument 关联的类名
    uselist  一对一的关系 一对多必须是设置uselist=True
    backref  反向引用的名称
    lazy     懒加载
    """

    address_list = db.relationship('Address',
                                   uselist=True,
                                   backref='user',
                                   lazy='dynamic')
コード例 #2
0
class User(db.Model, UserMixin):
    #这里继承的必须改成id  不是id要重写底层
    id = db.Column(db.Integer, primary_key=True, autoincrement=True)

    username = db.Column(db.String(64), unique=True, nullable=False)
    password_hash = db.Column(db.String(128), nullable=False)
    # 0 表示未激活 1 表示激活
    is_delete = db.Column(db.Integer, default=0)

    #  验证数据
    #  声明的时候是方法
    #  使用的时候是属性
    @property
    def password(self):
        return self.password_hash

    # md5
    @password.setter
    def password(self, password):
        if len(password) >= 8:
            # 对密码进行加密
            self.password_hash = generate_password_hash(password)
        else:
            raise Exception('密码不符合规范')

    # 明文   123456
    def verify_password(self, password):
        return check_password_hash(self.password_hash, password)
コード例 #3
0
class Cinema(db.Model):
    """
        影院表
    """
    cid = db.Column(db.Integer, primary_key=True, autoincrement=True)
    # 影院的名称
    name = db.Column(db.String(100), unique=True, nullable=False, index=True)
    # 城市
    city = db.Column(db.String(64))
    # 区域
    district = db.Column(db.String(64))
    # 地址
    address = db.Column(db.String(255))
    # 联系电话
    phone = db.Column(db.String(11))
    # 评分
    score = db.Column(db.Float(3, 1))
    # 影厅的数量
    hall_num = db.Column(db.Integer)
    # True 营业    false 休息
    flag = db.Column(db.Integer, default=1)
    # 服务费
    service_money = db.Column(db.Numeric(3, 1))
    # 限购数量
    astrict = db.Column(db.Integer)
    # 是否删除
    is_delete = db.Column(db.Boolean, default=True)
    hs_list = db.relationship('HallScheduling',
                              lazy='dynamic',
                              backref='cinema')
    halls = db.relationship('Hall', lazy='dynamic', backref='cinema')
コード例 #4
0
class Catalog(db.Model):  # 分类名称表
    __tablename__ = 't_catalog'
    id = db.Column(db.String(255), primary_key=True)
    is_use = db.Column(db.Integer)
    name = db.Column(db.String(32))
    sort = db.Column(db.Integer)  # 排序
    isVip = db.Column(db.Integer, default=0)
コード例 #5
0
ファイル: models.py プロジェクト: zhangwei725/flask_login
class User(db.Model, UserMixin):
    uid = db.Column(db.Integer, primary_key=True, autoincrement=True)
    username = db.Column(db.String(64),
                         unique=True,
                         index=True,
                         nullable=False)
    _password = db.Column(db.String(128), nullable=False)
    _is_active = db.Column(db.Boolean, default=False)
    # 表示用户被管理员干掉了
    is_delete = db.Column(db.Boolean, default=False)

    @property
    def is_active(self):
        return self._is_active

    def get_id(self):
        return self.uid

    @property
    def password(self):
        return self._password

    # 对密码进行加密
    @password.setter
    def password(self, password):
        if password:
            self._password = custom_app_context.encrypt(password)
        else:
            raise Exception('password is not null')

    # 验证密码
    def verify_password(self, password):
        return custom_app_context.verify(password, self._password)
コード例 #6
0
class Vipcode(db.Model):
    __tablename__ = 't_vipcode'
    id = db.Column(db.String(255), primary_key=True)
    code = db.Column(db.String(32))
    is_use = db.Column(db.Integer)
    create_date = db.Column(db.DateTime, default=datetime.datetime.now())
    expire_date = db.Column(db.DateTime, default=datetime.datetime.now())
コード例 #7
0
class Order(db.Model):
    id = db.Column(db.Integer, autoincrement=True, primary_key=True)
    # 订单号
    no = db.Column(db.String(50), unique=True, nullable=False, index=True)
    # 关联电影
    movie_id = db.Column(db.Integer, db.ForeignKey(Movie.id))
    # 影院
    cinema_id = db.Column(db.Integer, db.ForeignKey(Cinema.cid))
    # 影厅
    hs_id = db.Column(db.Integer, db.ForeignKey(HallScheduling.hsid))
    # 座位
    ss_id = db.Column(db.Integer, db.ForeignKey(SeatScheduling.id))
    seat_id = db.Column(db.Integer, db.ForeignKey(Seats.sid))
    # 所购票数量
    number = db.Column(db.Integer, nullable=False)
    # 取票码
    ticket_code = db.Column(db.String(100))
    # 总金额
    total = db.Column(db.Numeric(7, 2))
    # 创建的时间
    create_date = db.Column(db.DateTime, default=datetime.datetime.now())
    # 支付时间
    pay_date = db.Column(db.DateTime)
    # 状态 1: 未支付 2: 已支付 3: 支付已使用 4: 支付未使用
    status = db.Column(db.SmallInteger)
    # 支付有效期
    out_time = db.Column(db.DateTime, default=datetime.datetime.now() + datetime.timedelta(minutes=15))
    is_delete = db.Column(db.Boolean, default=True)
コード例 #8
0
ファイル: models.py プロジェクト: zhanjiahuan/tpp
class Goods(db.Model):
    __tablename__ = "goods"
    id = db.Column(db.Integer, autoincrement=True, primary_key=True)

    good_id = db.Column(db.String(32), unique=True)

    cid = db.Column(db.Integer)
    # shop_id = db.Column(db.Integer, db.ForeignKey(GcProperty.id))

    # 外键
    # cid = db.Column(db.Integer)
    # shop_id = db.Column(db.Integer)
    # brand_id = db.Column(db.Integer)
    ################
    good_name = db.Column(db.String(255), nullable=False)
    show_img = db.Column(db.String(255))
    good_desc = db.Column(db.String(255))
    good_price = db.Column(db.Numeric(11, 2))

    # stocks = db.Column(db.Integer)
    # good_tips = db.Column(db.String(255))
    # is_hot = db.Column(db.Integer)
    # is_new = db.Column(db.Integer)
    # is_recom = db.Column(db.Integer)
    # is_sale = db.Column(db.Integer)
    # good_status = db.Column(db.Integer)
    # sale_volume = db.Column(db.Integer)
    # sale_time = db.Column(db.DateTime, default=datetime.datetime.now())
    # # 0:删除 1:有效
    # is_delete = db.Column(db.Boolean, default=1)
    # # 创建时间
    # create_time = db.Column(db.DateTime, default=datetime.datetime.now())
コード例 #9
0
ファイル: models.py プロジェクト: zhangwei725/flask_rest
class Banner(db.Model):
    banner_id = db.Column(db.Integer(), primary_key=True, autoincrement=True)
    title = db.Column(db.String(64), index=True, unique=True, nullable=False)
    image = db.Column(db.String(64))
    detail_url = db.Column(db.String(64))
    order = db.Column(db.Integer)
    create_time = db.Column(db.DateTime, default=datetime.datetime.now())
コード例 #10
0
class Movies(db.Model):
    mid = db.Column(db.Integer, autoincrement=True, primary_key=True)
    # 电影中文名
    show_name = db.Column(db.String(64), nullable=False, index=True, unique=True)
    # 电影英文名称
    show_name_en = db.Column(db.String(64), nullable=False, index=True, unique=True)
    # 导演
    director = db.Column(db.String(32), nullable=False, index=True)
    # 主演
    leading_role = db.Column(db.String(256), nullable=False, index=True)
    # 影片类型
    type = db.Column(db.String(64), nullable=False)
    # 影片国家
    country = db.Column(db.String(32), nullable=False)
    # 语言
    language = db.Column(db.String(32), nullable=False)
    # 影片长度
    duration = db.Column(db.String(32), nullable=False)
    # 播放类型 IMAX 2D 3D 4D
    screening_model = db.Column(db.String(32), nullable=False)
    # 上映日期
    open_day = db.Column(db.Date)
    # 影片海报
    pic = db.Column(db.String(256), nullable=False)
    # 1即将上映 2 正在热映
    flag = db.Column(db.SmallInteger, default=1)
    # 是否删除
    is_delete = db.Column(db.Boolean, default=1)
コード例 #11
0
class Address(db.Model):
    aid = db.Column(db.Integer, primary_key=True, autoincrement=True)
    uid = db.Column(db.Integer, db.ForeignKey(User.uid, ondelete='CASCADE'))
    province = db.Column(db.String(100), nullable=False)
    city = db.Column(db.String(100), nullable=False)
    detail = db.Column(db.TEXT, nullable=False)
    phone = db.Column(db.String(20))
コード例 #12
0
ファイル: models.py プロジェクト: LEILI1993/qqq
class Movies(db.Model):
    __tablename__ = 'movies'
    mid = db.Column(db.Integer,primary_key=True,autoincrement=True)
    id = db.Column(db.Integer)
    #电影中文名
    chinese_name = db.Column(db.String(64),unique=False)
    #英文名称
    englist_name = db.Column(db.String(64),unique=False)
    # 导演
    director = db.Column(db.String(64))
    #主演
    leadingRole = db.Column(db.String(64))
    #电影类型
    type = db.Column(db.String(64))
    #国家
    country = db.Column(db.String(64))
    #语言
    language = db.Column(db.String(64))
    #时长
    duration = db.Column(db.String(64))
    # 放映模式
    screening_model = db.Column(db.String(10))
    #上映的时间
    openday = db.Column(db.DateTime, default=datetime.datetime.now())
     #影片背景图
    bg_pic = db.Column(db.String(64))
    # 状态   1 表示热映   2 即将上映
    flag = db.Column(db.Integer, default=1)
    # 是否删除
    is_delete = db.Column(db.Boolean, default=False)
コード例 #13
0
ファイル: models.py プロジェクト: zhangwei725/tpp_1805
class Banner(db.Model):
    bid = db.Column(db.Integer, primary_key=True, autoincrement=True)
    title = db.Column(db.String(100))
    image = db.Column(db.String(100))
    detail_url = db.Column(db.String(100))
    order = db.Column(db.Integer, default=0)
    create_time = db.Column(db.DateTime, default=datetime.datetime.now())
    is_delete = db.Column(db.Boolean, default=False)
コード例 #14
0
ファイル: model.py プロジェクト: redhoe/flask-admin
class UserFund(db.Model):
    __tablename__ = 'userfund'
    id = db.Column(db.Integer, primary_key=True, autoincrement=True)
    user_id = db.Column(db.Integer, db.ForeignKey('user.id'), nullable=False)
    balance = db.Column(db.String(30))  # 可用余额
    pay_in_ing = db.Column(db.String(30))  # 待收入
    pay_out_ing = db.Column(db.String(30))  # 待支出
    update_time = db.Column(db.DateTime, default=datetime.now)
コード例 #15
0
class ErrorData(db.Model):
    __tablename__ = 'error_data'
    id = db.Column(db.String(10), primary_key=True, autoincrement=True)
    time = db.Column(db.DateTime, nullable=True)
    value = db.Column(db.Float, nullable=False)
    sensor_id = db.Column(db.String(10),
                          db.ForeignKey('bridge.id', ondelete='CASCADE'),
                          nullable=False)
コード例 #16
0
class Record(db.Model):
    __tablename__ = 'record'
    id = db.Column(db.String(10), primary_key=True, autoincrement=True)
    time = db.Column(db.DateTime, nullable=False)
    operation = db.Column(db.String(20), nullable=False)
    user_id = db.Column(db.String(10),
                        db.ForeignKey('user.id', ondelete='CASCADE'),
                        nullable=False)
コード例 #17
0
class User(db.Model,UserMixin):
    __tablename__='user'
    id=db.Column(db.Integer,primary_key=True)
    name=db.Column(db.String(30),nullable=False)
    pwd=db.Column(db.String(30),nullable=False)

    def __repr__(self):
        return "User {}".format(self.name)
コード例 #18
0
class User(db.Model):
    uid = db.Column(db.Integer, primary_key=True, autoincrement=True)
    username = db.Column(db.String(64), index=True, unique=True, nullable=False)
    password = db.Column(db.String(100), nullable=False)
    email = db.Column(db.String(100))
    phone = db.Column(db.Integer, nullable=False)
    create_date = db.Column(db.DateTime, default=datetime.datetime.now())
    url = db.Column(db.String(100))
    is_delete = db.Column(db.Boolean, default=False)
コード例 #19
0
ファイル: models.py プロジェクト: HTCssy/Flask
class Shop(db.Model):
    shop_id = db.Column(db.Integer, primary_key=True)
    name = db.Column(db.String(64), index=True, unique=True)
    sub_title = db.Column(db.String(64))
    original_price = db.Column(db.Numeric(10, 2))
    promote_price = db.Column(db.Numeric(10, 2))
    stock = db.Column(db.Integer)
    cate_id = db.Column(db.Integer)
    create_date = db.Column(db.DateTime, default=datetime.datetime.now())
コード例 #20
0
class TodoList(db.Model):
    __tablename__ = 'todolist'
    id=db.Column(db.Integer,primary_key=True)
    user_id=db.Column(db.Integer,nullable=False)
    title=db.Column(db.String(254),nullable=False)
    status=db.Column(db.String(10),nullable=False)
    create_time=db.Column(db.Integer,default=int(time.time()))

    def __repr__(self):
        return "TodoList {}".format(self.title)
コード例 #21
0
class Res(db.Model):  # 电影详情 film子表
    __tablename__ = 't_res'
    id = db.Column(db.String(255), primary_key=True)
    episodes = db.Column(db.Integer)  # 发作?
    is_use = db.Column(db.Integer)
    link = db.Column(db.Text)  # 下载链接
    link_type = db.Column(db.String(255))  # 链接类型
    name = db.Column(db.Text)  # 电影名称
    update_time = db.Column(db.String(255))  # 上传时间
    film_id = db.Column(db.String(255), db.ForeignKey(Film.id))  # film id
コード例 #22
0
class Bridge(db.Model):
    __tablename__ = 'bridge'
    id = db.Column(db.String(10), primary_key=True, autoincrement=True)
    name = db.Column(db.String(20), nullable=False)
    address = db.Column(db.String(50), nullable=False)
    state = db.Column(db.Boolean, nullable=False)
    sensor_list = db.relationship('sensor',
                                  backref='bridge',
                                  cascade='all, delete-orphan',
                                  passive_deletes=True)
コード例 #23
0
class Url(db.Model):
    id = db.Column(db.Integer, primary_key=True)
    short_url_code = db.Column(db.String(32))
    long_url = db.Column(db.String(1000))
    create_time = db.Column(db.DateTime(), default=datetime.now)

    @classmethod
    def is_unique_short_url(cls, value=None):
        """ 传入code判断是否唯一"""
        urls = cls.query.filter_by(short_url_code=value).first()
        if urls:
            return False
        else:
            return True

    @property
    def short_url(self):
        """短域名"""
        return current_app.config['BASE_URL'] + self.short_url_code

    @classmethod
    def generic_short_url_code(cls):
        short_url_code = generic_codes(5)
        return short_url_code if cls.is_unique_short_url(
            short_url_code) else generic_short_url_code(cls)

    @classmethod
    def save_url(cls, long_url):
        url = cls.has_the_long_url(long_url)
        if url:
            return url
        short_url_code = cls.generic_short_url_code()
        url = cls(short_url_code=short_url_code, long_url=long_url)
        db.session.add(url)
        db.session.commit()
        return url

    @classmethod
    def has_the_long_url(cls, long_url):
        url = cls.query.filter_by(long_url=long_url).first()
        return url if url else None

    @classmethod
    def convert_to_long(cls):
        """短域名访问后需要转为常常的域名"""
        code = request.path.strip('/')
        url = cls.query.filter_by(short_url_code=code).first()
        if url:
            long_url = url.long_url
            if not long_url.startswith('http'):
                long_url = 'http://' + long_url
            return long_url
        else:
            raise ApiException(msg='not found', code=404, error_code=404)
コード例 #24
0
class User(db.Model):
    user_id = db.Column(db.Integer, autoincrement=True, primary_key=True)
    username = db.Column(db.String(64),
                         unique=True,
                         index=True,
                         nullable=False)
    price = db.Column(db.Numeric(10, 2), default=0.00)
    status = db.Column(db.Boolean, default=False)
    image = db.Column(db.String(100))
    create_date = db.Column(db.DateTime, default=datetime.datetime.now())
    desc = db.Column(db.Text)
コード例 #25
0
class UserLogin(db.Model, UserMixin):
    uid = db.Column(db.Integer, primary_key=True)
    username = db.Column(db.String(64),
                         index=True,
                         unique=True,
                         nullable=False)
    password = db.Column(db.String(256), nullable=False)
    email = db.Column(db.String(64), nullable=False)

    #如果使用自定义的id需要重写该方法
    def get_id(self):
        return self.uid
コード例 #26
0
class User(db.Model):
    __tablename__ = 'user'
    id = db.Column(db.String(10), primary_key=True, autoincrement=True)
    username = db.Column(db.String(20), unique=True, nullable=False)
    password = db.Column(db.String(50), nullable=False)
    inspect_list = db.relationship('inspect_data',
                                   backref='user',
                                   cascade='all, delete-orphan',
                                   passive_deletes=True)
    record_list = db.relationship('record',
                                  backref='user',
                                  cascade='all, delete-orphan',
                                  passive_deletes=True)
コード例 #27
0
ファイル: model.py プロジェクト: redhoe/flask-admin
class User(db.Model):
    __tablename__ = 'user'
    id = db.Column(db.Integer, primary_key=True, autoincrement=True)
    username = db.Column(db.String(50))
    password = db.Column(db.String(100))
    phone = db.Column(db.String(20))
    email = db.Column(db.String(50))
    create_time = db.Column(db.DateTime, default=datetime.now)
    # 建立表联系
    loans = db.relationship('Loan', backref='user')

    def __str__(self):
        return self.username
コード例 #28
0
ファイル: models.py プロジェクト: zhangwei725/tpp_1805
class Area(db.Model):
    aid = db.Column(db.Integer, primary_key=True)
    parent_id = db.Column(db.Integer)
    short_name = db.Column(db.String(64))
    name = db.Column(db.String(64))
    merger_name = db.Column(db.String(64))
    level = db.Column(db.String(64))
    pinyin = db.Column(db.String(64))
    code = db.Column(db.String(64))
    zip_code = db.Column(db.String(64))
    first = db.Column(db.String(64))
    lng = db.Column(db.String(64))
    lat = db.Column(db.String(64))
コード例 #29
0
class Area(db.Model):
    aid = db.Column(db.Integer, autoincrement=True, primary_key=True)
    parent_id = db.Column(db.Integer)
    short_name = db.Column(db.String(64), nullable=False, index=True, unique=True)
    name = db.Column(db.String(64), nullable=False, index=True, unique=True)
    merger_name = db.Column(db.String(64), nullable=False)
    level = db.Column(db.String(64), nullable=False)
    pinyin = db.Column(db.String(64), nullable=False)
    code = db.Column(db.String(64), nullable=False)
    zip_code = db.Column(db.String(64), nullable=False)
    first = db.Column(db.String(64), nullable=False)
    lng = db.Column(db.String(64), nullable=False)
    lat = db.Column(db.String(64), nullable=False)
    is_host=db.Column(db.Boolean,default=0)
コード例 #30
0
class Area(db.Model):
    aid = db.Column(db.Integer, primary_key=True, autoincrement=True)
    parent_id = db.Column(db.Integer)
    short_name = db.Column(db.String(64))
    name = db.Column(db.String(64))
    merger_name = db.Column(db.String(64))
    level = db.Column(db.String(64))
    pinyin = db.Column(db.String(64))
    code = db.Column(db.String(64))
    zip_code = db.Column(db.String(64))
    first = db.Column(db.String(64))
    lng = db.Column(db.String(64))
    lat = db.Column(db.String(64))
    is_hot = db.Column(db.Integer, )
    status = db.Column(db.Integer, default=1)