0
對於我正在試驗的數據庫,建議將Match
和Team
之間的關係從M2M更改爲兩個1對1關係。邏輯:每場比賽只有兩支球隊。SQLAlchemy:Double一對一關係聲明
我不知道如何在我的models.py
中實現這個功能;這裏是我得到了什麼至今(有刪節):
class Match(db.Model):
id = db.Column(db.String, primary_key=True)
# One to One x2 with Team
hometeam_id = db.Column(db.Integer, db.ForeignKey('team.id'))
awayteam_id = db.Column(db.Integer, db.ForeignKey('team.id'))
team = db.relationship("Team", back_populates="match")
hoemteam_goals = db.Column(db.Integer, nullable=False)
awayteam_goals = db.Column(db.Integer, nullable=False)
class Team(db.Model):
id = db.Column(db.Integer, primary_key=True)
name = db.Column(db.String, nullable=False)
points = db.Column(db.Integer)
matches_played = db.Column(db.Integer)
# Many side of M2M With Match
match = relationship("Match", back_populates="team", uselist=False)
似乎有東西丟失在這裏,特別是在relationship
S IN的Match
側的聲明。