mirror of
https://github.com/django/django.git
synced 2025-11-19 03:08:59 +00:00
Fixed #11639, #13618 -- Added get_prepopulated_fields method to ModelAdmin and InlineModelAdmin to be able to handle prepopulated fields on a case-by-case basis. Thanks, leanmeandonothingmachine.
git-svn-id: http://code.djangoproject.com/svn/django/trunk@16069 bcc190cf-cafb-0310-a4f2-bffc1f526a37
This commit is contained in:
parent
51cfd7a50b
commit
6c17190bf8
6 changed files with 110 additions and 11 deletions
|
|
@ -193,7 +193,8 @@ class InlineAdminFormSet(object):
|
|||
"""
|
||||
A wrapper around an inline formset for use in the admin system.
|
||||
"""
|
||||
def __init__(self, inline, formset, fieldsets, readonly_fields=None, model_admin=None):
|
||||
def __init__(self, inline, formset, fieldsets, prepopulated_fields=None,
|
||||
readonly_fields=None, model_admin=None):
|
||||
self.opts = inline
|
||||
self.formset = formset
|
||||
self.fieldsets = fieldsets
|
||||
|
|
@ -201,18 +202,21 @@ class InlineAdminFormSet(object):
|
|||
if readonly_fields is None:
|
||||
readonly_fields = ()
|
||||
self.readonly_fields = readonly_fields
|
||||
if prepopulated_fields is None:
|
||||
prepopulated_fields = {}
|
||||
self.prepopulated_fields = prepopulated_fields
|
||||
|
||||
def __iter__(self):
|
||||
for form, original in zip(self.formset.initial_forms, self.formset.get_queryset()):
|
||||
yield InlineAdminForm(self.formset, form, self.fieldsets,
|
||||
self.opts.prepopulated_fields, original, self.readonly_fields,
|
||||
self.prepopulated_fields, original, self.readonly_fields,
|
||||
model_admin=self.opts)
|
||||
for form in self.formset.extra_forms:
|
||||
yield InlineAdminForm(self.formset, form, self.fieldsets,
|
||||
self.opts.prepopulated_fields, None, self.readonly_fields,
|
||||
self.prepopulated_fields, None, self.readonly_fields,
|
||||
model_admin=self.opts)
|
||||
yield InlineAdminForm(self.formset, self.formset.empty_form,
|
||||
self.fieldsets, self.opts.prepopulated_fields, None,
|
||||
self.fieldsets, self.prepopulated_fields, None,
|
||||
self.readonly_fields, model_admin=self.opts)
|
||||
|
||||
def fields(self):
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue