如何通过静态方法菊花链接Django模型的反向外键?

时间:2015-09-24 03:15:09

标签: python django django-models

假设我有3个Django模型:

class MyModelA(models.Model):
    my_int = models.IntegerField()

    @staticmethod
    def my_Astatic_method():
        return "AHello"

class MyModelB(models.Model):
    my_int = models.IntegerField()
    my_a = models.ForeignKey(MyModelA, related_name="MyModelB_a")


    @staticmethod
    def my_Bstatic_method():
        return "BHello"

class MyModelC(models.Model):
    my_int = models.IntegerField()
    my_b = models.ForeignKey(MyModelB, related_name="MyModelC_b")

    @staticmethod
    def my_Cstatic_method():
        return "CHello"

我有一个名为MyModelA的{​​{1}}实例。在a的方法中,我想致电a。我该怎么办?

my_Cstatic_method()可以调用a.MyModelB_a.model.my_Bstatic_method()的静态方法:

MyModelB

但我不知道如何从>>> a.MyModelB_a.model.my_Bstatic_method() 'BHello' 的{​​{1}}属性中将{1}}的静态方法降低到一级。我该怎么办?

令人惊讶的是,对象MyModelC没有MyModelB属性:

model

0 个答案:

没有答案