示例#1
0
class User(db.Model):
    __tablename__ = 'users'

    id = db.Column(db.Integer, primary_key=True)
    name = db.Column(db.String(64), nullable=False)
    email = db.Column(db.String(64), nullable=False)
    password = db.Column(db.String(128), nullable=False)
    created_at = db.Column(db.DateTime, nullable=False, default=datetime.now)
示例#2
0
class User(db.Model):
    __tablename__ = 'TBL_TEST'
    SEQ = db.Column(db.Integer, primary_key=True)
    USERNAME = db.Column(db.String(80), nullable=False)
    NUMBER = db.Column(db.Integer, nullable=False)

    def __repr__(self):
        return '<User %r>' % self.USERNAME
示例#3
0
class Flat(db.Model):
    __tablename__ = 'Flat'

    id = db.Column(db.Integer, primary_key=True)
    name = db.Column(db.String(120), nullable=False)
    user_id = db.Column(db.Integer, db.ForeignKey('User.id'))

    def __repr__(self):
        return '<Flat {}>'.format(self.name)
示例#4
0
class Todo(db.Model):
    __tablename__ = 'todos'
    id = db.Column(db.Integer, primary_key=True, autoincrement=True)
    name = db.Column(db.String(128), nullable=False)
    done = db.Column(db.Boolean(), default=False, nullable=False)

    def __init__(self, name, done):
        self.name = name
        self.done = done
示例#5
0
class Photo(db.Model):
    __tablename__ = 'Photo'

    id = db.Column(db.Integer, primary_key=True)
    file_name = db.Column(db.String(80))
    user_id = db.Column(db.Integer, db.ForeignKey('User.id'), nullable=False)
    property_id = db.Column(db.Integer, db.ForeignKey('Property.id'))

    def __repr__(self):
        return '<Photo {}>'.format(self.file_name)
示例#6
0
class DataSystem(db.Model):
    __tablename__ = 'Data_system'

    id = db.Column(db.Integer, primary_key=True)
    user_id = db.Column(db.Integer, db.ForeignKey('User.id'))
    system_id = db.Column(db.Integer,
                          db.ForeignKey('Dir_system.id'),
                          nullable=False)
    token = db.Column(db.String(120))
    name_slug = db.Column(db.String(120))
示例#7
0
class Rental(db.Model):
    __tablename__ = 'Rental'

    id = db.Column(db.Integer, primary_key=True)
    flat_id = db.Column(db.Integer, db.ForeignKey('Flat.id'), nullable=False)
    user_name = db.Column(db.String(30))
    phone_number = db.Column(db.String(30))
    guests = db.Column(db.Integer)
    from_date = db.Column(db.String(30))
    to_date = db.Column(db.String(30))
    from_time = db.Column(db.String(30))
    to_time = db.Column(db.String(30))

    def __repr__(self):
        return '<Rental {}, user_name={} nights={}>'.format(self.id,
                                                            self.user_name,
                                                            self.nights)

    formater = {
        'id': fields.Integer,
        'flat_id': fields.Integer,
        'user_name': fields.String,
        'phone_number': fields.String,
        'guests': fields.Integer,
        'from_date': fields.String,
        'to_date': fields.String,
        'from_time': fields.String,
        'to_time': fields.String,
    }

    @staticmethod
    @marshal_with(formater)
    def rental_by_json(rental):
        return rental
示例#8
0
class Customers(db.Model):
    __tablename__ = "customers"
    __table_args__ = {'extend_existing': True}

    id = db.Column(db.Integer, primary_key=True)
    name = db.Column(db.String(128), unique=True, nullable=False)
    dob = db.Column(db.Date, nullable=False)
    updated_at = db.Column(db.DateTime, nullable=False)

    def __init__(self, name, dob, updated_at):
        self.name = name
        self.dob = dob
        self.updated_at = updated_at
示例#9
0
class Calendar(db.Model):
    __tablename__ = 'Calendar'

    id = db.Column(db.Integer, primary_key=True)
    property_id = db.Column(db.Integer, db.ForeignKey('Property.id'), nullable=False)
    system_id = db.Column(db.Integer, db.ForeignKey('Dir_system.id'), nullable=False)
    availability = db.Column(db.String(30))
    price = db.Column(db.Integer)
    currency = db.Column(db.String(30))
    start_date = db.Column(db.String(30))
    end_date = db.Column(db.String(30))

    def __repr__(self):
        return '<Calendar {}, {}>'.format(self.id,
                                          self.property_id)

    formater={
        'id': fields.Integer,
        'property_id': fields.Integer,
        'system_id': fields.Integer,
        'availability': fields.String,
        'price': fields.Integer,
        'currency': fields.String,
        'start_date': fields.String,
        'end_date': fields.String,
    }

    @staticmethod
    @marshal_with(formater)
    def calendar_by_json(calendar):
        return calendar
示例#10
0
class User(db.Model):
    __tablename__ = "users"
    __table_args__ = {'extend_existing': True}

    id = db.Column(db.Integer, primary_key=True)
    username = db.Column(db.String(128), unique=True, nullable=False)
    password_hash = db.Column(db.String(256), nullable=False)

    def __init__(self, username, password):
        self.username = username
        self.password_hash = generate_password_hash(password)

    def check_password(self, password):
        return check_password_hash(self.password_hash, password)
示例#11
0
class User(db.Model):
    __tablename__ = 'users'
    id = db.Column(db.Integer, primary_key=True, nullable=False)
    firstname = db.Column(db.String(30), nullable=False)
    lastname = db.Column(db.String(30), nullable=False)
    username = db.Column(db.String(30), nullable=False, unique=True)
    email = db.Column(db.String(40), nullable=False, unique=True)
    password = db.Column(db.String(128), nullable=False)
    time_created = db.Column(db.DateTime(timezone=True),
                             server_default=func.now())
    time_updated = db.Column(db.DateTime(timezone=True), onupdate=func.now())

    def __init__(self, firstname, lastname, username, email, password):
        self.firstname = firstname
        self.lastname = lastname
        self.username = username
        self.email = email
        self.password = password

    @staticmethod
    def get(user_id=None, username=None):
        if user_id:
            return User.query.filter_by(id=user_id).first()
        elif username:
            return User.query.filter_by(username=username).first()
        return None

    def set_password(self, new_pass):
        new_hash = pwd_context.hash(new_pass)
        self.password = new_hash

    def verify_password(self, password):
        return pwd_context.verify(password, self.password)

    def generate_auth_token(self, expiration=600):
        s = TimedJSONWebSignatureSerializer(os.environ.get("SECRET_KEY"),
                                            expires_in=expiration)
        return s.dumps({'id': self.id})

    @staticmethod
    def verify_auth_token(token):
        s = TimedJSONWebSignatureSerializer(os.environ.get("SECRET_KEY"), )
        try:
            data = s.loads(token)
        except SignatureExpired:
            return None  # valid token, but expired
        except BadSignature:
            return None  # invalid token
        user = User.get(user_id=data['id'])
        return user

    def __repr__(self):
        return '{0} {1}: {2}'.format(self.firstname, self.lastname, self.email)
示例#12
0
class Todo(db.Model):

    __tablename__ = 'todo'

    now = datetime.today()

    id = db.Column(db.Integer, primary_key=True)
    name = db.Column(db.String(32), nullable=False)
    contents = db.Column(db.String(256))
    deadline = db.Column(db.Date, nullable=False, default=now.date())
    priority = db.Column(db.Integer, default=3)
    state = db.Column(db.Integer, default=0)
    created = db.Column(db.DateTime, nullable=False, default=datetime.now)
    updated = db.Column(db.DateTime, nullable=False, default=datetime.now, onupdate=datetime.now)

    def __repr__(self):
        return 'Todo(id={id},name={name},contents={contents},deadline={deadline},priority={priority},state={state}'\
                .format(id=self.id, name=self.name, contents=self.contents, deadline=self.deadline, priority=self.priority, state=self.state)
示例#13
0
class User(db.Model):
    __tablename__ = 'User'

    id = db.Column(db.Integer, primary_key=True)
    first_name = db.Column(db.String(120))
    last_name = db.Column(db.String(120))
    email = db.Column(db.String(255))
    password = db.Column(db.String(120))
    code_recovery = db.Column(db.String(30), nullable=True)
    date_code_recovery = db.Column(db.Date, nullable=True)

    def __repr__(self):
        return '<User {}>'.format(self.first_name)

    def set_password(self, password):
        self.password = generate_password_hash(password)

    def check_password(self, password):
        return check_password_hash(self.password, password)
示例#14
0
class DirSystem(db.Model):
    __tablename__ = 'Dir_system'

    id = db.Column(db.Integer, primary_key=True)
    name = db.Column(db.String)
    url_img = db.Column(db.String)
示例#15
0
class Property(db.Model):
    __tablename__ = 'Property'

    id = db.Column(db.Integer, primary_key=True)
    system_id = db.Column(db.Integer,
                          db.ForeignKey('Dir_system.id'),
                          nullable=False)
    inner_id = db.Column(db.Integer, nullable=False)
    name = db.Column(db.String(120), nullable=False)

    country = db.Column(db.String(120))
    city = db.Column(db.String(120))
    district = db.Column(db.String(120))
    zip_code = db.Column(db.String(30))
    currency = db.Column(db.String(30))
    photo_url = db.Column(db.String(255))
    price = db.Column(db.Integer)
    min_stay = db.Column(db.Integer)
    number_of_guests = db.Column(db.Integer)
    size = db.Column(db.Integer)

    flat_id = db.Column(db.Integer, db.ForeignKey('Flat.id'))
    local_user_id = db.Column(db.Integer, db.ForeignKey('User.id'))

    def __repr__(self):
        return '<Property {}>'.format(self.name)
示例#16
0
class GuestInfo(db.Model):
    __tablename__ = 'GuestInfo'

    id = db.Column(db.Integer, primary_key=True)
    calendar_id = db.Column(db.Integer, db.ForeignKey('Calendar.id'), nullable=False)
    system_id = db.Column(db.Integer, nullable=False)
    user_name = db.Column(db.String(30))
    phone_number = db.Column(db.String(30))
    guests = db.Column(db.Integer)
    nights = db.Column(db.Integer)
    total_cost = db.Column(db.Integer)
    currency = db.Column(db.String(30))
    from_time = db.Column(db.String(30))
    to_time = db.Column(db.String(30))

    def __repr__(self):
        return '<GuestInfo {}, {} user_name={} nights={}>'.format(self.id,
                                                                  self.calendar_id,
                                                                  self.user_name,
                                                                  self.nights)

    formater = {
        'id': fields.Integer,
        'calendar_id': fields.Integer,
        'user_name': fields.String,
        'phone_number': fields.String,
        'guests': fields.Integer,
        'nights': fields.Integer,
        'total_cost': fields.String,
        'currency': fields.String,
    }

    @staticmethod
    @marshal_with(formater)
    def guest_by_json(renter):
        return renter
示例#17
0
文件: model.py 项目: interphx/mvs
import datetime
from project.database import db, Model, Column, relationship

role_to_user = db.Table(
    'role_to_user', db.Column('user_id', db.Integer(),
                              db.ForeignKey('user.id')),
    db.Column('role_id', db.Integer(), db.ForeignKey('role.id')))


class Role(Model):
    id = Column(db.Integer, primary_key=True)
    name = Column(db.String(255), nullable=False, unique=True)