Example #1
0
class User(UserMixin, db.Model):
    id = db.Column(db.Integer, primary_key=True)
    username = db.Column(db.String(15), unique=True, nullable=False)
    password_hash = db.Column(db.String(128))
    password = db.Column(db.String(60), nullable=False)

    def __repr__(self):
        return f"user('{self.username}')"

    @property
    def password(self):
        raise AttributeError('password is not a readable attribute')

    @password.setter
    def password(self, password):
        self.password_hash = generate_password_hash(password)

    def verify_password(self, password):
        return check_password_hash(self.password_hash, password)
Example #2
0
class ArtPiece(db.Model):
    artwork_id = db.Column(db.Integer, primary_key=True)
    artist_id = db.Column(db.Integer,
                          db.ForeignKey("Artist.artist_id"),
                          nullable=False)
    room_id = db.Column(db.Integer, nullable=False)
    title = db.Column(db.String(50), nullable=False)
    description = db.Column(db.String(120), nullable=False)
    date = db.Column(db.Date, nullable=False)
    picture_path = db.Column(db.String(30),
                             nullable=False,
                             default='defaultPic.jpg')
    audio_path = db.Column(db.String(30),
                           nullable=False,
                           default='defaultAudio.mp3')
    video_path = db.Column(db.String(30),
                           nullable=False,
                           default='defaultVideo.mp3')
    location_x = db.Column(db.Integer, nullable=False)
    location_y = db.Column(db.Integer, nullable=False)

    def __repr__(self):
        return f"ArtPiece('{self.title}', '{self.description}', '{self.date}', '{self.location_x}'), '{self.location_y}')"
Example #3
0
class Vistor(UserMixin, db.Model):
    visitor_id = db.Column(db.Integer, primary_key=True)
    last_artwork_visited = db.Column(db.Integer, nullable=False)
    recommendation_type = db.Column(db.String(20), nullable=False)
    language = db.Column(db.String(20), nullable=False)
Example #4
0
class Room(db.Model):
    room_id = db.Column(db.Integer, primary_key=True)
    room_title = db.Column(db.String(20), nullable=False)
    floor_number = db.Column(db.Integer, nullable=False)
Example #5
0
class Artist(db.Model):
    artist_id = db.Column(db.Integer, primary_key=True)
    artist_name = db.Column(db.String(30), nullable=False)
    wiki_link = db.Column(db.String(200), nullable=False)