diff options
| author | Jacob Kaplan-Moss <jacob@jacobian.org> | 2008-08-31 20:30:55 +0000 |
|---|---|---|
| committer | Jacob Kaplan-Moss <jacob@jacobian.org> | 2008-08-31 20:30:55 +0000 |
| commit | 4f5b0a321d0151cfdb06f31a679b118c29a2f713 (patch) | |
| tree | b4ded392016af88c934d6750bd59b2ebfb6730e2 | |
| parent | 8b11341a9a706f2a239d9e4eec1c093b4e93fecb (diff) | |
Fixed #8194 (again): correctly focus on the first declared field in the admin. Thanks to fredbartle for catching my silly mistake the first time 'round.
git-svn-id: http://code.djangoproject.com/svn/django/trunk@8774 bcc190cf-cafb-0310-a4f2-bffc1f526a37
| -rw-r--r-- | django/contrib/admin/helpers.py | 11 |
1 files changed, 8 insertions, 3 deletions
diff --git a/django/contrib/admin/helpers.py b/django/contrib/admin/helpers.py index 56b4f56a68..00e1f88dab 100644 --- a/django/contrib/admin/helpers.py +++ b/django/contrib/admin/helpers.py @@ -20,9 +20,14 @@ class AdminForm(object): yield Fieldset(self.form, name, **options) def first_field(self): - if self.form._meta.fields is not None: - name = self.form._meta.fields[0] - return forms.BoundField(self.form, self.form.fields[name], name) + try: + fieldset_name, fieldset_options = self.fieldsets[0] + field_name = fieldset_options['fields'][0] + if not isinstance(field_name, basestring): + field_name = field_name[0] + return self.form[field_name] + except (KeyError, IndexError): + pass try: return iter(self.form).next() except StopIteration: |
