编辑foreignkey对象的属性

时间:2015-04-07 12:58:47

标签: python django models

我正在尝试访问Django中的ForeignKey对象,但只设法显示其值,而不是编辑它们。

class ShippingAddress(models.Model):
    name = models.CharField(max_length=63, primary_key=True)
    street = models.CharField(max_length=63)
    houseNumber = models.CharField(max_length=10)
    zipCode = models.CharField(max_length=10)
    city = models.CharField(max_length=63)
    country = models.CharField(max_length=63)

class MainClass(models.Model):
    name = models.CharField(max_length=63)
    creationDate = models.DateTimeField(blank=True)
    aShippingAddress = models.ForeignKey(ShippingAddress)

这将是一个例子。我现在想在主类中直接访问和编辑ShippingAddress模型的值。现在虽然我设法只访问对象本身,而不是直接访问它的每个值。

(admin.py)

def editZipCode(self, obj):
            return obj.aShippingAddress.zipCode

通过这种方式,我设法至少显示每个值,但这就是它。

欢迎任何想法。

1 个答案:

答案 0 :(得分:0)

您需要使用inline

class MainClassInline(admin.TabularInline):
    model = MainClass

class ShippingAddressAdmin(admin.ModelAdmin):
    ...
    inlines = (MainClassInline,)