diff options
| author | Joseph Kocherhans <joseph@jkocherhans.com> | 2009-03-31 00:03:34 +0000 |
|---|---|---|
| committer | Joseph Kocherhans <joseph@jkocherhans.com> | 2009-03-31 00:03:34 +0000 |
| commit | 62353e8fe74b37d60841696846f985e45e8b03bf (patch) | |
| tree | dd181321808b2f5ecf6161d42eda2237a0f7af87 /django | |
| parent | 5c9d54344c61e72894054661d14bcc09f65b6786 (diff) | |
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
Diffstat (limited to 'django')
| -rw-r--r-- | django/forms/models.py | 6 |
1 files changed, 5 insertions, 1 deletions
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): """ |
