self.session_id = session_id self.socket_id = socket_id self.token = hash(str(self.name) + str(self.session_id)) def tokenize(self): return self.token def serialize(self): jsonify({'name': self.name, 'session_id': self.session_id}) upvote_users = db.Table( 'upvote_users', db.Column('song_id', db.Integer, db.ForeignKey('song.id'), primary_key=True), db.Column('user_token_id', db.Integer, db.ForeignKey('user_token.id'), primary_key=True)) class Song(db.Model): id = db.Column(db.String(), primary_key=True) session_id = db.Column(db.Integer, db.ForeignKey('session.id'), nullable=False) upvote_users = db.relationship('UserToken', secondary=upvote_users, lazy='subquery', backref=db.backref('songs', lazy=True))