2つの関係を混乱させる同じタブネームの関係
-
28-10-2019 - |
質問
つまり:
class Share(db.Model):
"""
Stores the Checkpoint shares between users
"""
id = db.Column(db.Integer, primary_key=True)
user_from_id = db.Column(db.Integer, db.ForeignKey('user.id'))
user_from = db.relationship("User")
user_to_id = db.Column(db.Integer, db.ForeignKey('user.id'))
user_to = db.relationship("User")
エラーが発生します:
ArgumentError:関係share.user_fromの親/子テーブル間の結合条件を決定できませんでした。 「プライマリジョイン」式を指定します。 「二次」が存在する場合、「セカンダリジョイン」も必要です。
どうすればこれを修正できますか?
ありがとう!
解決
エラーメッセージが示唆するように、指定する必要があります primaryjoin
あなたの価値 関係:
class Share(db.Model):
# ...
user_from = relationship("User", primaryjoin="Share.user_from_id==User.id")
user_to = relationship("User", primaryjoin="Share.user_to_id==User.id")
# ...
見る 関係()への代替結合条件を指定する() 詳細については。
所属していません StackOverflow