From 62353e8fe74b37d60841696846f985e45e8b03bf Mon Sep 17 00:00:00 2001 From: Joseph Kocherhans Date: Tue, 31 Mar 2009 00:03:34 +0000 Subject: Fixed #9863. A ForeignKey with editable=False to the parent in an inline no longer raises an exception. Thanks to keithb for the test case and Alex Gaynor for the patch. git-svn-id: http://code.djangoproject.com/svn/django/trunk@10239 bcc190cf-cafb-0310-a4f2-bffc1f526a37 --- django/forms/models.py | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) (limited to 'django/forms') diff --git a/django/forms/models.py b/django/forms/models.py index 32a85c5609..70f0631e2c 100644 --- a/django/forms/models.py +++ b/django/forms/models.py @@ -545,7 +545,11 @@ class BaseInlineFormSet(BaseModelFormSet): if self._pk_field == self.fk: form.fields[self._pk_field.name] = InlineForeignKeyField(self.instance, pk_field=True) else: - form.fields[self.fk.name] = InlineForeignKeyField(self.instance, label=form.fields[self.fk.name].label) + # The foreign key field might not be on the form, so we poke at the + # Model field to get the label, since we need that for error messages. + form.fields[self.fk.name] = InlineForeignKeyField(self.instance, + label=getattr(form.fields.get(self.fk.name), 'label', capfirst(self.fk.verbose_name)) + ) def _get_foreign_key(parent_model, model, fk_name=None): """ -- cgit v1.3