看起来ndb.polymodel.PolyModel
类曾经具有class_name()
方法,但据我所知它已被弃用。
我有一个使用polymodel的数据结构,该数据结构的形式为父User类,具有两个子类-Employee和Manager,并且我想在整个过程中进行一些基本检查,以确定User对象是Employee类还是Manager类。
目前,我只是直接调用对象的.__class__.__name__
属性,但是我想知道为什么不赞成使用PolyModel.class_name()
方法。有没有更好的方法来确定类的继承?
最佳答案
根据上面的注释,您需要的是isinstance(user, Employee)
/ isinstance(user, Manager)
。