質問

つまり:

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")
    # ...

見る 関係()への代替結合条件を指定する() 詳細については。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top