我有一個像指定的完整路徑實體與contains_eager)繼承層次(
(session.query(Root).with_polymorphic('*')
.outerjoin(Subclass.related1).options(contains_eager(Subclass.related1)))
到目前爲止,事情工作的查詢。
我想也想急切地負載Related1.related2
,我想這:
(session.query(Root).with_polymorphic('*')
.outerjoin(Subclass.related1).options(contains_eager(Subclass.related1))
.outerjoin(Related1.related2).options(contains_eager(Related1.related2)))
但它不工作:
sqlalchemy.exc.ArgumentError: Can't find property 'related2' on any entity specified in this Query. Note the full path from root (Mapper|Root|root) to target entity must be specified.
鑑於related1
通過子類與根實體我看不到如何指定完整路徑。
我也試過
(session.query(Root).with_polymorphic('*')
.outerjoin(Subclass.related1).options(contains_eager(Subclass.related1))
.outerjoin(Related1.related2).options(contains_eager('related1.related2')))
其可預見的失敗,
sqlalchemy.exc.ArgumentError: Can't find property named 'related1' on the mapped entity Mapper|Root|root in this Query.
我怎麼可以指定間接相關實體的完整路徑contains_eager()
?
好的,謝謝。現在我可以看到它實際上是在文檔中。 –