2016-03-10 2 views
0

У меня есть модели ORM.SQLAlchemy, есть ли способ установить фильтр при условии связи

class A: 
    id = .... 
    type = 'dynamic' or None 

class B: 
    id =... 
    rels = relationship(A) 

Есть ли способ, чтобы установить опцию rels отношений, что позволяет мне после session.query(B).get(id).rels получить уже отфильтрованы данные.

ответ

0

Это описано в разделе Specifying Alternate Join Conditions в документации:

rels = relationship(A, primaryjoin=and_(B.a_id == A.id, A.type == "dynamic")) 

Проблема заключается в том, что эта фильтрация является глобальным и не настраивается за запросом.