Beispiel #1
0
class User(db.Model, UserMixin):
    id = db.Column(db.Integer, primary_key=True)
    username = db.Column(db.String(20), unique=True, nullable=False)
    email = db.Column(db.String(120), unique=True, nullable=False)
    image_file = db.Column(db.String(20),
                           nullable=False,
                           default='default.jpg')
    password = db.Column(db.String(60), nullable=False)
    posts = db.relationship('Post', backref='author', lazy=True)
    packings = db.relationship('Packing', backref='author', lazy=True)

    def get_reset_token(self, expires_sec=1800):
        s = Serializer(app.config['SECRET_KEY'], expires_sec)
        return s.dumps({'user_id': self.id}).decode('utf_8')

    @staticmethod
    def verify_reset_token(token):
        s = Serializer(app.config['SECRET_KEY'])
        try:
            user_id = s.loads(token)['user_id']
        except:
            return None
        return User.query.get(user_id)

    #testin fix this when ready

    def __repr__(self):
        return f"User('{self.username}','{self.email}', '{self.image_file}')"
Beispiel #2
0
class User(db.Model, UserMixin):
    id = db.Column(db.Integer, primary_key=True)
    username = db.Column(db.String(20), unique=True, nullable=False)
    email = db.Column(db.String(120), unique=True, nullable=False)
    image_file = db.Column(db.String(20),
                           nullable=False,
                           default='default.jpg')
    password = db.Column(db.String(60), nullable=False)

    # backref allows us to get the user who created the post
    # lazy defines when sqlalchemy loads the datafrom the database. True means
    # it will load data as-needed in one go
    #This allows us to use post attribute to get all of a user's posts
    #Not a column
    # posts = db.relationship('Post', backref='author', lazy=True)

    def get_reset_token(self, expires_sec=1800):
        s = Serializer(current_app.config['SECRET_KEY'], expires_sec)
        return s.dumps({'user_id': self.id}).decode('utf-8')

    @staticmethod  #Tells python not to expect self parameter as argument
    def verify_reset_token(token):
        s = Serializer(current_app.config['SECRET_KEY'])
        try:
            user_id = s.loads(token)['user_id']
        except:
            return None
        return User.query.get(user_id)

    def __repr__(self):
        return f"User('{self.username}', '{self.email}', '{self.image_file}'"
Beispiel #3
0
class User(db.Model, UserMixin):
    id = db.Column(db.Integer, primary_key=True)
    username = db.Column(db.String(20), unique=True, nullable=False)
    email = db.Column(db.String(120), unique=True, nullable=False)
    image_file = db.Column(db.String(20), nullable=False,
                           default='default.jpg')
    password = db.Column(db.String(60), nullable=False)
    # One-to-many connection to Post, backref as the connecting data
    posts = db.relationship('Post', backref='author', lazy=True)

    # The method to get the password reset token that's valid for 30 minutes
    def get_reset_token(self, expires_sec=1800):
        s = Serializer(current_app.config['SECRET_KEY'], expires_sec)
        return s.dumps({'user_id': self.id}).decode('utf-8')

    # A static method for verifying the reset token
    @staticmethod
    def verify_reset_token(token):
        s = Serializer(current_app.config['SECRET_KEY'])
        try:
            user_id = s.loads(token)['user_id']
        except:
            return None
        return User.query.get(user_id)

    def __repr__(self):
        return f"User('{self.username}', '{self.email}', '{self.image_file}')"
Beispiel #4
0
class User(db.Model, UserMixin):
    id = db.Column(db.Integer, primary_key=True)
    email = db.Column(db.String(100), nullable=False, unique=True)
    username = db.Column(db.String(20), nullable=False, unique=True)
    image_file = db.Column(db.String(20),
                           nullable=False,
                           default='default.jpeg')
    password = db.Column(db.String(60), nullable=False)
    posts = db.relationship('Post', backref='author', lazy=True)

    def __repr__(self):
        return f"User('{self.username}', '{self.email}', '{self.image_file}')"
Beispiel #5
0
class BoxInstance(db.Model):
    id = db.Column(db.Integer, primary_key=True)
    box_id = db.Column(db.Integer)
    name = db.Column(db.String(100), nullable=False)
    x = db.Column(db.Integer, nullable=False)
    y = db.Column(db.Integer, nullable=False)
    z = db.Column(db.Integer, nullable=False)
    weight = db.Column(db.Integer, nullable=False)
    packing_id = db.Column(db.Integer,
                           db.ForeignKey('packing.id'),
                           nullable=False)
    container_instance_id = db.Column(db.Integer)
    x_start = db.Column(db.Integer)
    x_end = db.Column(db.Integer)
    y_start = db.Column(db.Integer)
    y_end = db.Column(db.Integer)
    z_start = db.Column(db.Integer)
    z_end = db.Column(db.Integer)
    packed = db.Column(db.Integer)  #inicializálás nullával
    r_x = db.Column(db.Boolean, default=False, nullable=False)
    r_y = db.Column(db.Boolean, default=False, nullable=False)
    r_z = db.Column(db.Boolean, default=False, nullable=False)

    def __repr__(self):
        return f"Box instance('name={self.container_instance_id}','name={self.container_instance_id}'," \
               f"'id={self.id}', x='{self.x}', y='{self.y}')," \
               f"z='{self.z}', weight='{self.weight}', box_id='{self.box_id}', x rotation='{self.r_x}', y rotation='{self.r_y}'," \
               f" x rotation='{self.r_x}', packed='{self.packed}' packing id= '{self.packing_id}', box_id='{self.box_id}'," \
               f" x_start='{self.x_start}', y_start='{self.y_start}'), z_start='{self.z_start}'," \
               f" x_end='{self.x_end}'), y_end='{self.y_end}', z_end='{self.z_end}'),"
Beispiel #6
0
class User(db.Model, UserMixin):
    id = db.Column(db.Integer, primary_key=True)
    username = db.Column(db.String(20), unique=False, nullable=False)

    first_name = db.Column(db.String(50), unique=False, nullable=False)
    last_name = db.Column(db.String(50), unique=False, nullable=False)
    postal_code = db.Column(db.Integer, unique=False, nullable=False)
    prefecture = db.Column(db.String(120),
                           unique=False,
                           nullable=False,
                           default='Tokyo')
    my_number = db.Column(db.Integer, unique=False, nullable=False)

    email = db.Column(db.String(120), unique=False, nullable=False)
    image_file = db.Column(db.String(20),
                           unique=False,
                           nullable=False,
                           default="default.jpg")
    password = db.Column(db.String(60), nullable=False)

    location_id = db.Column(db.Integer,
                            db.ForeignKey('park.id'),
                            unique=False,
                            nullable=True,
                            default=0)
    posts = db.relationship('Post', backref='author', lazy=True)
    reservations = db.relationship('Reservation', backref='creator', lazy=True)

    def __repr__(self):
        return f"User('{self.username}', '{self.email}', '{self.image_file}')"
Beispiel #7
0
class Park(db.Model):
    id = db.Column(db.Integer, primary_key=True)
    name = db.Column(db.String(100), nullable=False)
    prefecture = db.Column(db.String(100), nullable=False)
    area = db.Column(db.Float, nullable=False)
    lat = db.Column(db.Float, nullable=False)
    lon = db.Column(db.Float, nullable=False)
    capacity = db.Column(db.Integer, nullable=False, default=0)
    count = db.Column(db.Integer, nullable=False, default=0)
    image_file = db.Column(db.String(100),
                           unique=False,
                           nullable=False,
                           default="default.jpg")
    fake_distance = db.Column(db.Integer, nullable=False, default=69)
    people = db.relationship('User', backref='location', lazy=True)
    reservations = db.relationship('Reservation', backref='place', lazy=True)

    def __repr__(self):
        return f"Post('{self.name}', '{self.prefecture}', '{self.area}', {self.lat}', '{self.lon}', '{self.capacity}', '{self.present}')"
Beispiel #8
0
class Packing(db.Model):
    id = db.Column(db.Integer, primary_key=True)
    name = db.Column(db.String(100), nullable=False)
    date_created = db.Column(db.DateTime,
                             nullable=False,
                             default=datetime.utcnow)
    user_id = db.Column(db.Integer, db.ForeignKey('user.id'), nullable=False)

    containers = db.relationship('Container', backref='packing', lazy=True)
    boxes = db.relationship('Box', backref='packing', lazy=True)

    def __repr__(self):
        return f"Packing('{self.name}', '{self.date_created}', id: '{self.id}')"
Beispiel #9
0
class Container(db.Model):
    id = db.Column(db.Integer, primary_key=True)
    name = db.Column(db.String(100), nullable=False)
    x = db.Column(db.Integer, nullable=False)
    y = db.Column(db.Integer, nullable=False)
    z = db.Column(db.Integer, nullable=False)
    max_weight = db.Column(db.Integer, nullable=False)
    packing_id = db.Column(db.Integer,
                           db.ForeignKey('packing.id'),
                           nullable=False)

    def __repr__(self):
        return f"Container('{self.name}', x='{self.x}', y='{self.y}')," \
               f"z='{self.z}', max weight='{self.max_weight}', packing_id='{self.packing_id}', id='{self.id}'"
Beispiel #10
0
class Box(db.Model):
    id = db.Column(db.Integer, primary_key=True)
    name = db.Column(db.String(100), nullable=False)
    x = db.Column(db.Integer, nullable=False)
    y = db.Column(db.Integer, nullable=False)
    z = db.Column(db.Integer, nullable=False)
    r_x = db.Column(db.Boolean, default=False, nullable=False)
    r_y = db.Column(db.Boolean, default=False, nullable=False)
    r_z = db.Column(db.Boolean, default=False, nullable=False)
    weight = db.Column(db.Integer, nullable=False)
    quantity = db.Column(db.Integer, nullable=False)
    packing_id = db.Column(db.Integer,
                           db.ForeignKey('packing.id'),
                           nullable=False)

    def __repr__(self):
        return f"Box('{self.name}', x='{self.x}', y='{self.y}')," \
               f"z='{self.z}', x rotation='{self.r_x}', y rotation='{self.r_y}'," \
               f" z rotation='{self.r_z}'," \
               f" weight='{self.weight}', packing_id='{self.packing_id}', id='{self.id}', quantity='{self.quantity}')" #, user_id='{self.user_id}')"
Beispiel #11
0
class Store(db.Model):
    id = db.Column(db.Integer, primary_key=True)
    name = db.Column(db.String(20), nullable=False)

    def __repr__(self):
        return f"User('{self.name}')"