22 lines
946 B
Python
22 lines
946 B
Python
"""Regular-season match for an organisation team (not tied to a tryout)."""
|
|
from app.extensions import db
|
|
from app.models.match_model.base import BaseMatch
|
|
|
|
|
|
class TeamMatch(BaseMatch):
|
|
"""Regular-season match for an organisation team (not tied to a tryout)."""
|
|
__tablename__ = 'team_matches'
|
|
id = db.Column(db.Integer, primary_key=True)
|
|
org_team_id = db.Column(db.Integer, db.ForeignKey('org_teams.id'), nullable=False)
|
|
opponent = db.Column(db.String(200), nullable=True)
|
|
|
|
org_team = db.relationship('OrgTeam', backref='team_matches')
|
|
creator = db.relationship('User', backref='created_team_matches')
|
|
participants = db.relationship(
|
|
'TeamMatchParticipant', backref='team_match', lazy='dynamic',
|
|
cascade='all, delete-orphan')
|
|
|
|
def get_confirmed_count(self):
|
|
all_p = self.participants.all()
|
|
confirmed = sum(1 for p in all_p if p.is_confirmed)
|
|
return confirmed, len(all_p) |