0
访问类方法,我有以下设置: 类面包(models.Model): #字段Django的:模型通过RelatedManager
class Pizza(models.Model):
# fields
class Topping(models.Model):
# fields
@classmethod
def do_something(cls):
# stuff
class Meta:
abstract = True
class PizzaTopping(models.Model):
obj = models.ForeignKey(Pizza, related_name='topping_set')
class BaguetteTopping(models.Model):
obj = models.ForeignKey(Baguette, related_name='topping_set')
我知道,关系所作的方式是不完美的,但现在就是这样。
我的问题是:我可以通过RelatedManager以动态方式访问do_something
,但不知道它背后是否有PizzaTopping
或BaguetteTopping
?
我的Pizza
或Baguette
实例obj
(在这一点上,我不知道这是否是Pizza
或Baguette
)。现在,我想打电话给这样的事情:
obj.topping_set.__modelclass__.do_something()
有没有办法做到这一点没有测试的类obj
?