在SQLAlchemy中给出一个简单的连接继承,将超类的一个实例“强制转换”为它的子类的最简单方法是什么?
显而易见的方法是检查超类上的鉴别器,然后根据适当的子类运行查询。但似乎应该有一种更简单的方法来实现它。
答案 0 :(得分:0)
我没有找到一种方法来转换现有的父实例,但是SQLalchemy确实有"with_polymorphic",它可以在很多地方用来返回在父和子基础上具有属性组合的glommed对象鉴别者。
所以,我补充道:
"with_polymorphic": "*"
到我父的类__mapper_args__
,现在对父进行查询会返回具有属于哪个子类的属性和值的对象。
这是最好的唯一方法吗?