mirror of
https://github.com/django/django.git
synced 2025-11-19 03:08:59 +00:00
Fixed #15424 -- Corrected lookup of callables listed in admin inlines' readonly_fields by passing the right ModelAdmin (sub)class instance when instantiating inline forms admin wrappers. Also, added early validation of its elements. Thanks kmike for the report and Karen for the patch fixing the issue.
git-svn-id: http://code.djangoproject.com/svn/django/trunk@15650 bcc190cf-cafb-0310-a4f2-bffc1f526a37
This commit is contained in:
parent
4d70d48ecb
commit
0a9b5d7ade
7 changed files with 99 additions and 20 deletions
|
|
@ -206,14 +206,14 @@ class InlineAdminFormSet(object):
|
|||
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,
|
||||
model_admin=self.model_admin)
|
||||
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,
|
||||
model_admin=self.model_admin)
|
||||
model_admin=self.opts)
|
||||
yield InlineAdminForm(self.formset, self.formset.empty_form,
|
||||
self.fieldsets, self.opts.prepopulated_fields, None,
|
||||
self.readonly_fields, model_admin=self.model_admin)
|
||||
self.readonly_fields, model_admin=self.opts)
|
||||
|
||||
def fields(self):
|
||||
fk = getattr(self.formset, "fk", None)
|
||||
|
|
@ -222,7 +222,7 @@ class InlineAdminFormSet(object):
|
|||
continue
|
||||
if field in self.readonly_fields:
|
||||
yield {
|
||||
'label': label_for_field(field, self.opts.model, self.model_admin),
|
||||
'label': label_for_field(field, self.opts.model, self.opts),
|
||||
'widget': {
|
||||
'is_hidden': False
|
||||
},
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue