2015-02-07 2 views
0

Как вы делаете несколько отношений один к одному между одними и теми же классами?Flask-SQLAlchemy: Как сделать несколько взаимно-однозначных отношений между одними и теми же классами?

Например, я хочу иметь класс «Местоположение», который имеет два разных типа «LoadDetail», которые я назвал «pickup_details» и «delivery_details». Может кто-нибудь объяснить?

Вот что я так далеко

class Location(db.Model): 
    id = db.Column(db.Integer, primary_key=True) 

    pickup_detail = db.relationship("LoadDetail", foreign_keys='LoadDetail.pickup_id', backref='pickup_location') 
    delivery_detail = db.relationship("LoadDetail", foreign_keys='LoadDetail.delivery_id', backref='delivery_location') 

class LoadDetail(db.Model): 
    id = db.Column(db.Integer, primary_key=True) 
    pickup_id = db.Column(db.Integer, db.ForeignKey('location.id')) 
    delivery_id = db.Column(db.Integer, db.ForeignKey('location.id')) 

Спасибо!

ответ

0

Вы должны установить связь primaryjoin. Пример в документации звучит почти так же, как то, что вы пытаетесь сделать.

Смежные вопросы