Skip to content

Instantly share code, notes, and snippets.

View zlavergne's full-sized avatar

Zack LaVergne zlavergne

View GitHub Profile
# Secondary table defining many-to-many join for private projects that only defined users can map on
project_allowed_users = db.Table(
'project_allowed_users',
db.metadata,
db.Column('project_id', db.Integer, db.ForeignKey('projects.id')),
db.Column('user_id', db.BigInteger, db.ForeignKey('users.id'))
)
class ProjectTeams(db.Model):
__tablename__ = 'project_teams'
class TeamMembers(db.Model):
__tablename__ = 'team_members'
team_id = db.Column(db.Integer, db.ForeignKey('teams.id', name='fk_teams'), primary_key=True)
user_id = db.Column(db.BigInteger, db.ForeignKey('users.id', name='fk_users'), primary_key=True)
function = db.Column(db.Integer, nullable=False)
member = db.relationship(User, backref='teams')
team = db.relationship('Team', backref='members')
# Secondary table defining many-to-many relationship between organisations and admins
organisation_admins = db.Table(
'organisation_admins',
db.metadata,
db.Column('organisation_id', db.Integer, db.ForeignKey('organisations.id'), nullable=False),
db.Column('user_id', db.BigInteger, db.ForeignKey('users.id'), nullable=False)
)
class Organisation(db.Model):