Exemplo n.º 1
0
class Item(db.Model):
    __tablename__ = 'Item'
    __table_args__ = {
        'mysql_engine': 'InnoDB',
        'mysql_charset': 'utf8',
        'extend_existing': True
    }

    id = db.Column(BIGINT(20, unsigned=True), primary_key=True, index=True)

    # 이미지 추가

    name = db.Column(VARCHAR(128))

    price = db.Column(INTEGER(10))

    categoryId = db.Column(BIGINT(20, unsigned=True),
                           ForeignKey("Category.id"))

    categoryRow = relationship("Category", lazy="joined")
Exemplo n.º 2
0
class Permission(db.Model, OutputMixin):
    """权限"""

    __tablename__ = 'permission'
    __table_args__ = {'mysql_collate': 'utf8mb4_general_ci'}

    id = Column(INTEGER(unsigned=True), primary_key=True)
    name = Column(VARCHAR(30), unique=True)
    roles = relationship('Role',
                         secondary=role_has_permissions,
                         back_populates='permissions')

    def __repr__(self):
        return "Permission<%s %s>" % (self.id, self.name)

    def to_json(self, rel=None):
        return {
            'id': self.id,
            'name': self.name,
        }
Exemplo n.º 3
0
class PromoterStatistic(db.Model):
    __tablename__ = 'promoter_statistics'

    id = Column(String(36), primary_key=True)
    user_id = Column(String(36), comment='用户 id')
    role_type = Column(TINYINT(4), comment='角色类型 1 为推广商 2 位推广经理')
    daily_trading_volume = Column(DECIMAL(16, 2), comment='日交易量')
    monthly_transaction_volume = Column(DECIMAL(16, 2), comment='月交易量')
    total_transaction_volume = Column(DECIMAL(16, 2), comment='总交易量')
    daily_total_commission = Column(DECIMAL(16, 2), comment='日的总佣金')
    brokerage_cost_per_day = Column(DECIMAL(16, 2), comment='日的券商成本')
    daily_remaining_commission = Column(DECIMAL(16, 2), comment='日的剩余佣金')
    total_monthly_commission = Column(DECIMAL(16, 2), comment='月的总佣金')
    brokerage_cost_per_month = Column(DECIMAL(16, 2), comment='月的券商成本')
    months_remaining_commission = Column(DECIMAL(16, 2), comment='月的剩余佣金')
    total_total_commission = Column(DECIMAL(16, 2), comment='总的总佣金')
    total_brokerage_cost = Column(DECIMAL(16, 2), comment='总的券商成本')
    total_remaining_commission = Column(DECIMAL(16, 2), comment='总的剩余佣金')
    create_time = Column(BIGINT(20), comment='创建时间')
    creation_time_int = Column(INTEGER(11), comment='创建时间 yyMMdd')
Exemplo n.º 4
0
class Policy(Base, DictBase):
    __tablename__ = 'policy'
    attributes = [
        'id', 'name', 'description', 'enabled', 'rules', 'created_by',
        'created_time', 'updated_by', 'updated_time'
    ]
    detail_attributes = attributes
    summary_attributes = ['id', 'name', 'description', 'enabled', 'rules']

    id = Column(INTEGER(11), primary_key=True)
    name = Column(String(36), nullable=False)
    description = Column(String(63), server_default=text("''"), nullable=True)
    enabled = Column(TINYINT(4), nullable=False)

    created_by = Column(String(36), nullable=True)
    created_time = Column(DateTime, nullable=True)
    updated_by = Column(String(36), nullable=True)
    updated_time = Column(DateTime, nullable=True)

    rules = relationship("Rule", secondary="policy_rule", lazy='subquery')
Exemplo n.º 5
0
class MpClientTasks(CommonBase):
	__tablename__ = 'mp_client_tasks'

	rid             = Column(BigInteger, primary_key=True, autoincrement=True)
	group_id        = Column(String(50), nullable=False, index=True, unique=False)

	id  			= Column(INTEGER(4, unsigned=True),   info="Task ID")
	name 			= Column(String(255), nullable=False, info="Name")
	cmd 			= Column(String(255), nullable=False, info="Command")
	description 	= Column(String(255), nullable=False, info="Description")
	active 			= Column(String(255), nullable=False, info="Active", server_default='1')
	startdate 		= Column(String(255), nullable=False, info="Start Date", server_default='2016-01-01')
	enddate 		= Column(String(255), nullable=False, info="End Date", server_default='2050-01-01')
	interval 		= Column(String(255), nullable=False, info="Interval")
	idrev 			= Column(String(255), nullable=False, info="Task Revision", server_default='1')
	parent 			= Column(String(255), nullable=False, info="Parent", server_default='0')
	scope 			= Column(String(255), nullable=False, info="Scope", server_default='Global')
	cmdalt 			= Column(String(255), nullable=False, info="Alt Command", server_default='0')
	mode 			= Column(String(255), nullable=False, info="Mode", server_default='0')
	idsig 			= Column(String(255), nullable=False, info="Signature", server_default='0')
Exemplo n.º 6
0
class M_MediaDetails(Base):
    __tablename__ = 'mediadetails'

    Media_ID = Column(INTEGER, primary_key=True, index=True, autoincrement=True)
    Media_Name = Column(VARCHAR(200), nullable=True)
    Media_SerialNo = Column(VARCHAR(10), nullable=True)
    Nation_Name = Column(VARCHAR(200), nullable=True)
    Language_Name = Column(VARCHAR(200), nullable=True)
    Actor_Name1 = Column(VARCHAR(200), nullable=True)
    Actor_Name2 = Column(VARCHAR(200), nullable=True)
    Actor_Name3 = Column(VARCHAR(200), nullable=True)
    Actor_Name4 = Column(VARCHAR(200), nullable=True)
    Director_Name1 = Column(VARCHAR(200), nullable=True)
    Director_Name2 = Column(VARCHAR(200), nullable=True)
    MediaType_Name1 = Column(VARCHAR(200), nullable=True)
    MediaType_Name2 = Column(VARCHAR(200), nullable=True)
    MediaType_Name3 = Column(VARCHAR(200), nullable=True)
    Carrier_Name = Column(VARCHAR(200), nullable=True)
    Audio_Name = Column(VARCHAR(200), nullable=True)
    MediaManage_OrderCount = Column(INTEGER(11), nullable=True)
Exemplo n.º 7
0
class solid(Base):
    __tablename__ = 'solid'

    crystal_form = Column(String(45))
    chemical_formula = Column(String(45))
    solid_ID = Column(INTEGER(6),
                      primary_key=True,
                      unique=True,
                      autoincrement=True,
                      default=0,
                      info={'colanderalchemy': {
                          'exclude': True
                      }})

    state_of_sample_ID = Column(
        Integer,
        ForeignKey('state_of_sample.state_of_sample_ID'),
        info={'colanderalchemy': {
            'exclude': True
        }})
Exemplo n.º 8
0
class CobraLanguages(db.Model):
    """
    Languages for files
    """
    __tablename__ = 'languages'
    __table_args__ = ({"mysql_charset": "utf8mb4"})

    id = db.Column(INTEGER(unsigned=True),
                   primary_key=True,
                   autoincrement=True,
                   nullable=False)
    language = db.Column(db.String(11), nullable=False, index=True)
    extensions = db.Column(db.String(128), nullable=False, default=None)

    def __init__(self, language, extensions):
        self.language = language
        self.extensions = extensions

    def __repr__(self):
        return "<CobraLanguage %r - %r>" % (self.id, self.language)
Exemplo n.º 9
0
class San_pham(Base):
    __tablename__ = 'san_pham'
    ma_san_pham = Column(String(50),
                         nullable=False,
                         unique=True,
                         primary_key=True)
    ten_san_pham = Column(String(100), nullable=False)
    ma_loai = Column(Integer, nullable=False)
    noi_dung_tom_tat = Column(String(255), nullable=False)
    #mo_ta_chi_tiet nullable =True
    mo_ta_chi_tiet = Column(String(1000))
    don_gia = Column(Integer, nullable=False)
    DVT = Column(String(20), nullable=False)
    tinh_trang = Column(String(100),
                        nullable=False,
                        default='Đang demo, chưa có hàng')
    hinh = Column(String(200))
    so_luong_ton = Column(Integer, nullable=True)
    don_gia_nhap = Column(Integer, nullable=True)
    san_pham_moi = Column(INTEGER(4), nullable=False, default=0)
Exemplo n.º 10
0
class Contact(db.Model):
    __tablename__ = 'contacts'

    id = Column(INTEGER(11), primary_key=True)
    data = Column(String(45))
    typeContact_id = Column(ForeignKey('typecontact.id'),
                            nullable=False,
                            index=True)
    Persons_id = Column(ForeignKey('persons.id'), nullable=False, index=True)

    Persons = relationship('Person')
    typeContact = relationship('Typecontact')

    def serialize(self):
        return {
            "id": self.id,
            "data": self.data,
            "typeContact_id": self.typeContact_id,
            "Persons_id": self.Persons_id,
        }
Exemplo n.º 11
0
class BudgetItem(db.Model):
    budgetitem_id = db.Column(db.Integer, nullable=False, primary_key=True)
    budgetitem_code = db.Column(db.String(4), nullable=False)
    budgetgroup_id = db.Column(db.Integer,
                               ForeignKey('budget_group.budgetgroup_id'),
                               nullable=False)
    budgetitem_name = db.Column(db.String(255), nullable=False)
    financial_year = db.Column(INTEGER(4), nullable=False)
    expenditure_budgeted = db.Column(db.Numeric(precision=10, scale=2),
                                     nullable=False,
                                     default=0.00)
    revenue_budgeted = db.Column(db.Numeric(precision=10, scale=2),
                                 nullable=False,
                                 default=0.00)
    expenditure_confirmed = db.Column(db.Numeric(precision=10, scale=2),
                                      nullable=False,
                                      default=0.00)
    revenue_confirmed = db.Column(db.Numeric(precision=10, scale=2),
                                  nullable=False,
                                  default=0.00)
Exemplo n.º 12
0
class QiLabelParagraph(Base):
    __tablename__ = 'qi_label_paragraph'

    insert_time = Column(INTEGER(11))
    call_id = Column(String(50))
    is_deleted = Column(SMALLINT(6), server_default=text("'0'"))
    id = Column(INTEGER(11), primary_key=True)
    paragraph_id = Column(VARCHAR(50), index=True)
    task_id = Column(VARCHAR(50), index=True)
    order_number = Column(INTEGER(11))
    start_time = Column(INTEGER(8))
    end_time = Column(INTEGER(8))
    duration = Column(INTEGER(11))
    text = Column(String(1024))
    role = Column(SMALLINT(6), index=True)
Exemplo n.º 13
0
class Page(db.Model):
    __tablename__ = 'pages'

    page_id = Column(BIGINT(20), primary_key=True)
    notebook_id = Column(ForeignKey('notebooks.notebook_id'),
                         nullable=False,
                         index=True)
    position = Column(INTEGER(11), nullable=False)
    title = Column(String(80))
    content = Column(LONGTEXT)

    notebook = relationship('Notebook')

    @classmethod
    def find_by_id(cls, id: int):
        return cls.query.filter_by(page_id=id).first()

    def save_to_db(self):
        if not self.position:
            count = self.query.filter_by(
                notebook_id=self.notebook_id).count() + 1
            self.position = count
        db.session.add(self)
        db.session.commit()

    def delete_from_db(self):
        pages = self.query.filter(Page.position > self.position).all()
        for page in pages:
            page.position -= 1
            page.save_to_db()

        db.session.delete(self)
        db.session.commit()

    @classmethod
    def find_all(cls):
        return cls.query.all()

    @classmethod
    def find_all_pages_of_notebook(cls, id: int):
        return cls.query.filter_by(notebook_id=id).all()
Exemplo n.º 14
0
class RawFlightSegment(Base, DBModel):
    __tablename__ = 'RawFlightSegments'

    rawFlightSegmentsId = Column(String(100), primary_key=True)
    segId = Column(String(100))
    originStation = Column(String(100))
    destinationStation = Column(String(100))
    departureDatetime = Column(DateTime)
    arrivalDatetime = Column(DateTime)
    carrier = Column(String(100))
    operatingCarrier = Column(String(100))
    duration = Column(INTEGER(11))
    flightNumber = Column(String(100))
    journeyMode = Column(String(100))
    directionality = Column(String(100))
    writeDate = Column(DateTime)
    apiCallId = Column(String(100))

    def __init__(self, Id, OriginStation, Directionality, DestinationStation,
                 DepartureDateTime, ArrivalDateTime, Duration, JourneyMode,
                 Carrier, OperatingCarrier, FlightNumber, apiCallId):

        # prefix는 table명 첫글자 소문자화
        self.prefix = self.__tablename__[0].lower() + self.__tablename__[1:]

        self.rawFlightSegmentsId = self.makeId(self.prefix)
        self.segId = str(Id)
        self.originStation = str(OriginStation)
        self.destinationStation = str(DestinationStation)
        self.departureDatetime = datetime.strptime(DepartureDateTime,
                                                   '%Y-%m-%dT%H:%M:%S')
        self.arrivalDatetime = datetime.strptime(ArrivalDateTime,
                                                 '%Y-%m-%dT%H:%M:%S')
        self.duration = int(Duration)
        self.journeyMode = str(JourneyMode)
        self.carrier = str(Carrier)
        self.operatingCarrier = str(OperatingCarrier)
        self.flightNumber = str(FlightNumber)
        self.directionality = str(Directionality)
        self.writeDate = datetime.now()
        self.apiCallId = apiCallId
Exemplo n.º 15
0
class NewSchedulesStatic(Base):
    __tablename__ = 'new_schedules_static'

    ID = Column(CHAR(40), primary_key=True, index=True)
    SCAC = Column(String(25), index=True, comment='船公司4字码')
    ROUTE_PARENT = Column(String(255), comment='服务父航线名称')
    ROUTE_NAME_EN = Column(String(255), comment='服务子航线名称')
    ROUTE_CODE = Column(String(250), index=True, comment='航线code')
    FLAG = Column(String(255), comment='类型,0:系统;1:动态生成;2:人工;3:手动添加')
    DEL_FLAG = Column(INTEGER(2),
                      server_default=text("'0'"),
                      comment='删除标识0不删除1删除')
    CREATE_TIME = Column(TIMESTAMP,
                         nullable=False,
                         server_default=text("CURRENT_TIMESTAMP"),
                         comment='创建时间')
    UPDATE_TIME = Column(
        TIMESTAMP,
        nullable=False,
        server_default=text("CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP"),
        comment='更新时间')
Exemplo n.º 16
0
class Resource(DbBase):
    '''
    资源表,一个资源可以有多个标签
    '''
    __tablename__ = 'resource'
    attributes = ['id', 'name', 'desc', 'tags', 'user_id', 'user', 'region_id', 'region']
    detail_attributes = attributes
    summary_attributes = ['name', 'desc']

    id = Column(INTEGER(11), primary_key=True, autoincrement=True)
    name = Column(String(255), nullable=False)
    desc = Column(String(255), nullable=True)
    user_id = Column(ForeignKey(u'user.id'), nullable=True)
    region_id = Column(ForeignKey(u'region.id'), nullable=True)
    user = relationship(u'User')
    region = relationship(u'Region')

    tags = relationship(u'Tag', primaryjoin='foreign(Resource.id) == Tag.res_id',
                        lazy=False, viewonly=True, uselist=True)
    def __repr__(self):
        return "<Resource(id={},name={},user={},region={},tags={})>".format(self.id,self.name,self.user,self.region,self.tags)
Exemplo n.º 17
0
class CobraVuls(db.Model):
    __tablename__ = 'vuls'
    id = db.Column(INTEGER(unsigned=True),
                   primary_key=True,
                   autoincrement=True,
                   nullable=False)
    name = db.Column(db.String(56), nullable=True, default=None)
    description = db.Column(db.String(512), nullable=True, default=None)
    repair = db.Column(db.String(512), nullable=True, default=None)
    created_at = db.Column(db.DateTime, nullable=True, default=None)
    updated_at = db.Column(db.DateTime, nullable=True, default=None)

    def __init__(self, name, description, repair, created_at, updated_at):
        self.name = name
        self.description = description
        self.repair = repair
        self.created_at = created_at
        self.updated_at = updated_at

    def __repr__(self):
        return "<CobraVuls %r - %r>" % (self.id, self.name)
Exemplo n.º 18
0
class MenuItem(Base):
    __tablename__ = 'menu'
    id = Column(INTEGER(11), primary_key=True)
    description = Column(
        VARCHAR(256))  # rationale behind menu desc being null by default?
    price = Column(DECIMAL(precision=10, scale=2, unsigned=True,
                           zerofill=True),
                   nullable=False)
    category = Column(VARCHAR(10), nullable=False)

    def __init__(self,
                 description='New Item',
                 price=0,
                 category='Food',
                 cost=0):
        self.description = description
        self.price = price
        self.category = category

    def __repr__(self):
        return '<Menu Item %r>' % (self.description)
Exemplo n.º 19
0
class Order(Base):
    __tablename__ = 'orders'

    OrderID = Column(INTEGER(11), primary_key=True)
    CustomerID = Column(ForeignKey('customers.CustomerID'), index=True)
    EmployeeID = Column(ForeignKey('employees.EmployeeID'), index=True)
    OrderDate = Column(DateTime, index=True)
    RequiredDate = Column(DateTime)
    ShippedDate = Column(DateTime, index=True)
    ShipVia = Column(ForeignKey('shippers.ShipperID'), index=True)
    Freight = Column(DECIMAL(10, 4))
    ShipName = Column(String(40))
    ShipAddress = Column(String(60))
    ShipCity = Column(String(15))
    ShipRegion = Column(String(15))
    ShipPostalCode = Column(String(10), index=True)
    ShipCountry = Column(String(15))

    customer = relationship('Customer')
    employee = relationship('Employee')
    shipper = relationship('Shipper')
Exemplo n.º 20
0
class SysUser(db.Model):
    __tablename__ = 'sys_user'

    USER_ID = Column(BIGINT(20), primary_key=True)
    AVATAR = Column(String(255))
    ACCOUNT = Column(String(45))
    PASSWORD = Column(String(45))
    SALT = Column(String(45))
    NAME = Column(String(45))
    BIRTHDAY = Column(DateTime)
    SEX = Column(String(32))
    EMAIL = Column(String(45))
    PHONE = Column(String(45))
    ROLE_ID = Column(String(255))
    DEPT_ID = Column(BIGINT(20))
    STATUS = Column(String(32))
    CREATE_TIME = Column(DateTime)
    CREATE_USER = Column(BIGINT(20))
    UPDATE_TIME = Column(DateTime)
    UPDATE_USER = Column(BIGINT(20))
    VERSION = Column(INTEGER(11))
Exemplo n.º 21
0
class CompanyCategories(BASE):
    """Class defining the mdl_companycategories table of the database."""

    __tablename__ = 'mdl_companycategories'
    __table_args__ = ({'mysql_engine': 'InnoDB'})

    idx_companycategory = Column(BIGINT(unsigned=True),
                                 primary_key=True,
                                 autoincrement=True,
                                 nullable=False)

    companycategory_name = Column(VARBINARY(128), nullable=True, default=None)

    enabled = Column(INTEGER(unsigned=True), server_default='1')

    ts_modified = Column(
        DATETIME,
        server_default=text('CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP'),
    )

    ts_created = Column(DATETIME, server_default=text('CURRENT_TIMESTAMP'))
Exemplo n.º 22
0
class HomeCu(Base):
    __tablename__ = 'home_cus'

    cID = Column(ForeignKey('customer.cID'), primary_key=True)
    fname = Column(String(20), nullable=False)
    lname = Column(String(20), nullable=False)
    age = Column(String(10))
    marriage = Column(INTEGER(11))
    remain = Column(DECIMAL(18, 2), nullable=False)

    customer = relationship('Customer')

    def to_json(self):
        return {
            'cID': self.cID,
            'fname': self.fname,
            'lname': self.lname,
            'age': self.age,
            'marriage': self.marriage,
            'remain': self.remain
        }
Exemplo n.º 23
0
class SmsVerifyCode(Base):
    __tablename__ = 'sms_verify_code'

    id = Column(BIGINT(20), primary_key=True, comment='主键')
    mobile = Column(DECIMAL(11, 0))
    code = Column(String(255))
    active = Column(TINYINT(1),
                    nullable=False,
                    server_default=text("'1'"),
                    comment='对应该条记录是否可用,1可用,0不可用')
    version = Column(INTEGER(20),
                     nullable=False,
                     server_default=text("'0'"),
                     comment='对应乐观锁的版本号')
    gmt_create = Column(DateTime, nullable=False, comment='对应记录的创建时间')
    gmt_modified = Column(DateTime,
                          nullable=False,
                          server_default=text("CURRENT_TIMESTAMP"),
                          comment='对应记录的修改时间')
    create_by = Column(String(250), nullable=False, comment='对应添加记录的人')
    modified_by = Column(String(250), nullable=False, comment='对应最后一次修改记录的')
Exemplo n.º 24
0
class SysFile(BaseModel):
    __tablename__ = 'sys_file'

    org_name = Column('org_name', String(255), doc='原始文件名')
    file_name = Column('file_name', String(255), nullable=False, doc='文件名')
    file_path = Column('file_path', String(255), doc='文件路径')
    file_url = Column('file_url', String(255), doc='文件URL')
    file_type = Column('file_type',
                       Integer(),
                       default=0,
                       doc='文件类型:目前无业务需求,默认为0')
    operator_id = Column('operator_id',
                         INTEGER(unsigned=True),
                         default=None,
                         doc='上传用户的Id')

    def upload(self):
        pass

    def download(self):
        pass
Exemplo n.º 25
0
class RequestLog(db.Model):
    __tablename__ = 'request_log'

    STATUS_ON = 1
    STATUS_OFF = 0

    id = Column(BIGINT(20), primary_key=True, comment='主键')
    account_id = Column(INTEGER(10), nullable=False, index=True, server_default=text("'0'"), comment='账户ID')
    send_mail = Column(String(255), nullable=False, comment='接收方账号')
    create_at = Column(DateTime, nullable=False, comment='创建时间')
    status = Column(TINYINT(3), nullable=False, server_default=text("'0'"), comment='状态码')

    @staticmethod
    def push(account_id: int, send_mail: str):
        instance = RequestLog()
        instance.account_id = account_id
        instance.send_mail = send_mail
        instance.create_at = datetime.now()
        instance.status = RequestLog.STATUS_ON
        db.session.add(instance)
        db.session.commit()
Exemplo n.º 26
0
class AgentNames(BASE):
    """Class defining the mdl_agent table of the database."""

    __tablename__ = 'mdl_agentnames'
    __table_args__ = {'mysql_engine': 'InnoDB'}

    idx_agentname = Column(BIGINT(unsigned=True),
                           primary_key=True,
                           autoincrement=True,
                           nullable=False)

    agent_name = Column(VARBINARY(512), nullable=True, default=None)

    enabled = Column(INTEGER(unsigned=True), server_default='1')

    ts_modified = Column(
        DATETIME,
        server_default=text('CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP'),
    )

    ts_created = Column(DATETIME, server_default=text('CURRENT_TIMESTAMP'))
Exemplo n.º 27
0
class SearchKeyword(Base):
    __tablename__ = 'search_keyword'

    id = Column(BIGINT(20), primary_key=True, comment='主键')
    product_Id = Column(BIGINT(20))
    keyword = Column(String(255))
    active = Column(TINYINT(1),
                    nullable=False,
                    server_default=text("'1'"),
                    comment='对应该条记录是否可用,1可用,0不可用')
    version = Column(INTEGER(20),
                     nullable=False,
                     server_default=text("'0'"),
                     comment='对应乐观锁的版本号')
    gmt_create = Column(DateTime, nullable=False, comment='对应记录的创建时间')
    gmt_modified = Column(DateTime,
                          nullable=False,
                          server_default=text("CURRENT_TIMESTAMP"),
                          comment='对应记录的修改时间')
    create_by = Column(String(250), nullable=False, comment='对应添加记录的人')
    modified_by = Column(String(250), nullable=False, comment='对应最后一次修改记录的')
Exemplo n.º 28
0
class Club(Base):
    __tablename__ = 'clubs'

    id = Column(INTEGER(11), primary_key=True)
    owner_id = Column(ForeignKey('users.id',
                                 ondelete='SET NULL',
                                 onupdate='CASCADE'),
                      index=True)
    handle = Column(String(64, 'utf8mb4_unicode_ci'),
                    nullable=False,
                    unique=True)
    description = Column(String(2048, 'utf8mb4_unicode_ci'))
    deleted = Column(TINYINT(1),
                     nullable=False,
                     index=True,
                     server_default=text("0"))
    created_at = Column(DateTime, server_default=text("current_timestamp()"))
    updated_at = Column(DateTime)

    owner = relationship('User')
    users = relationship('User', secondary='club_user_link')
Exemplo n.º 29
0
class Ressource(Base):
    __tablename__ = 'ressources'

    id_res = Column(INTEGER(11), primary_key=True)
    title_res = Column(String(100), nullable=False)
    status_res = Column(Enum('Validated', 'Refused', 'Pending'))
    acces_res = Column(TINYINT(1))
    created_at_res = Column(Date, nullable=False)
    content_res = Column(String(255))
    source_res = Column(String(50), nullable=False)
    updated_at_res = Column(Date)
    deleted_at_res = Column(Date)
    difficulty = Column(Enum('1', '2', '3'))
    id_user = Column(ForeignKey('users.id_user', ondelete='CASCADE', onupdate='CASCADE'), nullable=False, index=True)
    id_type_res = Column(ForeignKey('type_ressources.id_type_res', ondelete='CASCADE', onupdate='CASCADE'), nullable=False, index=True)

    type_ressource = relationship('TypeRessource')
    user = relationship('User')
    caracterise = relationship('Caracterise', primaryjoin='Ressource.id_res==Caracterise.id_res', lazy='joined')
    valable = relationship('EstValable', primaryjoin='Ressource.id_res==EstValable.id_res', lazy='joined')
    consulter = relationship('Consulter', primaryjoin='Consulter.id_res==Ressource.id_res', lazy='joined')
Exemplo n.º 30
0
class Tag(db.Model):
    __tablename__ = 'tags'
    id = db.Column(INTEGER(unsigned=True), primary_key=True)
    tag_name =  db.Column(db.String(20),unique=True)
    # 多对多关系: 把secondary参数设为关联表
    users = db.relationship('User',
                           secondary=tag_user,
                           backref=db.backref('tags',lazy='dynamic'),
                            lazy = 'dynamic')  # lazy = 'dynamic' :关系两侧返回的查询都可接受额外的过滤器

    #  多对多关系
    #  新建关系
    #  tag.users.append(xxx)
    #  db.session.add(tag)

    # 列出tag的所有user:  tag.users.all()
    # 列出user的所有tgas: user.tags.all()
    # 删除关系 tag.users.remove(user)

    def __repr__(self):
        return '<Tag: %r>' % (self.tag_name)