diff options
| author | Brian Rosner <brosner@gmail.com> | 2008-09-02 17:26:24 +0000 |
|---|---|---|
| committer | Brian Rosner <brosner@gmail.com> | 2008-09-02 17:26:24 +0000 |
| commit | c1de41f4d29d15616075ffd474e3aba7adcfc64f (patch) | |
| tree | f00fbc0995eb98d62438b58ae223d2b84cc0c2f3 /django | |
| parent | 326b26656aa3770be99da88dd76e7eb9c73d1dc5 (diff) | |
Fixed #7973 -- Added exclude to BaseModelAdmin to make everything consistent with the form/formset factories. Refs #8071 to make it easier to get at exclude. Thanks julien for the patch.
git-svn-id: http://code.djangoproject.com/svn/django/trunk@8861 bcc190cf-cafb-0310-a4f2-bffc1f526a37
Diffstat (limited to 'django')
| -rw-r--r-- | django/contrib/admin/options.py | 11 |
1 files changed, 11 insertions, 0 deletions
diff --git a/django/contrib/admin/options.py b/django/contrib/admin/options.py index f01edbcb28..ba48ded09a 100644 --- a/django/contrib/admin/options.py +++ b/django/contrib/admin/options.py @@ -31,6 +31,7 @@ class BaseModelAdmin(object): """Functionality common to both ModelAdmin and InlineAdmin.""" raw_id_fields = () fields = None + exclude = None fieldsets = None form = forms.ModelForm filter_vertical = () @@ -262,9 +263,14 @@ class ModelAdmin(BaseModelAdmin): fields = flatten_fieldsets(self.declared_fieldsets) else: fields = None + if self.exclude is None: + exclude = [] + else: + exclude = self.exclude defaults = { "form": self.form, "fields": fields, + "exclude": exclude + kwargs.get("exclude", []), "formfield_callback": self.formfield_for_dbfield, } defaults.update(kwargs) @@ -780,11 +786,16 @@ class InlineModelAdmin(BaseModelAdmin): fields = flatten_fieldsets(self.declared_fieldsets) else: fields = None + if self.exclude is None: + exclude = [] + else: + exclude = self.exclude defaults = { "form": self.form, "formset": self.formset, "fk_name": self.fk_name, "fields": fields, + "exclude": exclude + kwargs.get("exclude", []), "formfield_callback": self.formfield_for_dbfield, "extra": self.extra, "max_num": self.max_num, |
