【发布时间】:2011-10-15 13:32:27
【问题描述】:
我有一个使用自定义表单类的管理内联。如何从该表单类的函数中访问父实例(外键)?
相关代码如下:
models.py:
class Bar(models.Model):
name = models.CharField(max_length=50)
class Foo(models.Model):
name = models.CharField(max_length=50)
bar = models.ForeignKey(Bar, null=True, blank=True, related_name="foos")
admin.py:
class FooInlineAdmin(admin.TabularInline):
model = Foo
form = AdminFooForm
max_num = 3
class Bar(admin.ModelAdmin):
inlines = [FooInlineAdmin]
forms.py:
class AdminFooForm(forms.ModelForm):
class Meta:
model = Foo
def clean(self):
data = self.cleaned_data
mybar = self.get_foreign_key_somehow() # this is the line I'm interested in
我知道一旦有实际实例,我可以使用instance.bar 访问它。但是,这只有在确实有记录时才有效,对吗?因此,如果我使用此表单创建记录,则实例将为 None。
【问题讨论】:
标签: django django-admin inline-formset