|
@@ -214,8 +214,7 @@ class BaseModelAdmin(six.with_metaclass(forms.MediaDefiningClass)):
|
|
|
"""
|
|
|
db = kwargs.get('using')
|
|
|
if db_field.name in self.raw_id_fields:
|
|
|
- kwargs['widget'] = widgets.ForeignKeyRawIdWidget(db_field.remote_field,
|
|
|
- self.admin_site, using=db)
|
|
|
+ kwargs['widget'] = widgets.ForeignKeyRawIdWidget(db_field.remote_field, self.admin_site, using=db)
|
|
|
elif db_field.name in self.radio_fields:
|
|
|
kwargs['widget'] = widgets.AdminRadioSelect(attrs={
|
|
|
'class': get_ul_class(self.radio_fields[db_field.name]),
|
|
@@ -240,8 +239,7 @@ class BaseModelAdmin(six.with_metaclass(forms.MediaDefiningClass)):
|
|
|
db = kwargs.get('using')
|
|
|
|
|
|
if db_field.name in self.raw_id_fields:
|
|
|
- kwargs['widget'] = widgets.ManyToManyRawIdWidget(db_field.remote_field,
|
|
|
- self.admin_site, using=db)
|
|
|
+ kwargs['widget'] = widgets.ManyToManyRawIdWidget(db_field.remote_field, self.admin_site, using=db)
|
|
|
elif db_field.name in (list(self.filter_vertical) + list(self.filter_horizontal)):
|
|
|
kwargs['widget'] = widgets.FilteredSelectMultiple(
|
|
|
db_field.verbose_name,
|
|
@@ -639,8 +637,10 @@ class ModelAdmin(BaseModelAdmin):
|
|
|
try:
|
|
|
return modelform_factory(self.model, **defaults)
|
|
|
except FieldError as e:
|
|
|
- raise FieldError('%s. Check fields/fieldsets/exclude attributes of class %s.'
|
|
|
- % (e, self.__class__.__name__))
|
|
|
+ raise FieldError(
|
|
|
+ '%s. Check fields/fieldsets/exclude attributes of class %s.'
|
|
|
+ % (e, self.__class__.__name__)
|
|
|
+ )
|
|
|
|
|
|
def get_changelist(self, request, **kwargs):
|
|
|
"""
|
|
@@ -686,9 +686,10 @@ class ModelAdmin(BaseModelAdmin):
|
|
|
"formfield_callback": partial(self.formfield_for_dbfield, request=request),
|
|
|
}
|
|
|
defaults.update(kwargs)
|
|
|
- return modelformset_factory(self.model,
|
|
|
- self.get_changelist_form(request), extra=0,
|
|
|
- fields=self.list_editable, **defaults)
|
|
|
+ return modelformset_factory(
|
|
|
+ self.model, self.get_changelist_form(request), extra=0,
|
|
|
+ fields=self.list_editable, **defaults
|
|
|
+ )
|
|
|
|
|
|
def get_formsets_with_inlines(self, request, obj=None):
|
|
|
"""
|
|
@@ -974,7 +975,6 @@ class ModelAdmin(BaseModelAdmin):
|
|
|
compatibility. For convenience, it accepts the `level` argument as
|
|
|
a string rather than the usual level number.
|
|
|
"""
|
|
|
-
|
|
|
if not isinstance(level, int):
|
|
|
# attempt to get the level if passed a string
|
|
|
try:
|
|
@@ -982,11 +982,12 @@ class ModelAdmin(BaseModelAdmin):
|
|
|
except AttributeError:
|
|
|
levels = messages.constants.DEFAULT_TAGS.values()
|
|
|
levels_repr = ', '.join('`%s`' % l for l in levels)
|
|
|
- raise ValueError('Bad message level string: `%s`. '
|
|
|
- 'Possible values are: %s' % (level, levels_repr))
|
|
|
+ raise ValueError(
|
|
|
+ 'Bad message level string: `%s`. Possible values are: %s'
|
|
|
+ % (level, levels_repr)
|
|
|
+ )
|
|
|
|
|
|
- messages.add_message(request, level, message, extra_tags=extra_tags,
|
|
|
- fail_silently=fail_silently)
|
|
|
+ messages.add_message(request, level, message, extra_tags=extra_tags, fail_silently=fail_silently)
|
|
|
|
|
|
def save_form(self, request, form, change):
|
|
|
"""
|
|
@@ -1323,23 +1324,26 @@ class ModelAdmin(BaseModelAdmin):
|
|
|
'popup_response_data': popup_response_data,
|
|
|
})
|
|
|
|
|
|
- self.message_user(request,
|
|
|
+ self.message_user(
|
|
|
+ request,
|
|
|
_('The %(name)s "%(obj)s" was deleted successfully.') % {
|
|
|
'name': force_text(opts.verbose_name),
|
|
|
'obj': force_text(obj_display),
|
|
|
- }, messages.SUCCESS)
|
|
|
+ },
|
|
|
+ messages.SUCCESS,
|
|
|
+ )
|
|
|
|
|
|
if self.has_change_permission(request, None):
|
|
|
- post_url = reverse('admin:%s_%s_changelist' %
|
|
|
- (opts.app_label, opts.model_name),
|
|
|
- current_app=self.admin_site.name)
|
|
|
+ post_url = reverse(
|
|
|
+ 'admin:%s_%s_changelist' % (opts.app_label, opts.model_name),
|
|
|
+ current_app=self.admin_site.name,
|
|
|
+ )
|
|
|
preserved_filters = self.get_preserved_filters(request)
|
|
|
post_url = add_preserved_filters(
|
|
|
{'preserved_filters': preserved_filters, 'opts': opts}, post_url
|
|
|
)
|
|
|
else:
|
|
|
- post_url = reverse('admin:index',
|
|
|
- current_app=self.admin_site.name)
|
|
|
+ post_url = reverse('admin:index', current_app=self.admin_site.name)
|
|
|
return HttpResponseRedirect(post_url)
|
|
|
|
|
|
def render_delete_form(self, request, context):
|
|
@@ -1353,22 +1357,26 @@ class ModelAdmin(BaseModelAdmin):
|
|
|
media=self.media,
|
|
|
)
|
|
|
|
|
|
- return TemplateResponse(request,
|
|
|
+ return TemplateResponse(
|
|
|
+ request,
|
|
|
self.delete_confirmation_template or [
|
|
|
"admin/{}/{}/delete_confirmation.html".format(app_label, opts.model_name),
|
|
|
"admin/{}/delete_confirmation.html".format(app_label),
|
|
|
- "admin/delete_confirmation.html"
|
|
|
- ], context)
|
|
|
+ "admin/delete_confirmation.html",
|
|
|
+ ],
|
|
|
+ context,
|
|
|
+ )
|
|
|
|
|
|
- def get_inline_formsets(self, request, formsets, inline_instances,
|
|
|
- obj=None):
|
|
|
+ def get_inline_formsets(self, request, formsets, inline_instances, obj=None):
|
|
|
inline_admin_formsets = []
|
|
|
for inline, formset in zip(inline_instances, formsets):
|
|
|
fieldsets = list(inline.get_fieldsets(request, obj))
|
|
|
readonly = list(inline.get_readonly_fields(request, obj))
|
|
|
prepopulated = dict(inline.get_prepopulated_fields(request, obj))
|
|
|
- inline_admin_formset = helpers.InlineAdminFormSet(inline, formset,
|
|
|
- fieldsets, prepopulated, readonly, model_admin=self)
|
|
|
+ inline_admin_formset = helpers.InlineAdminFormSet(
|
|
|
+ inline, formset, fieldsets, prepopulated, readonly,
|
|
|
+ model_admin=self,
|
|
|
+ )
|
|
|
inline_admin_formsets.append(inline_admin_formset)
|
|
|
return inline_admin_formsets
|
|
|
|
|
@@ -1462,7 +1470,8 @@ class ModelAdmin(BaseModelAdmin):
|
|
|
for inline_formset in inline_formsets:
|
|
|
media = media + inline_formset.media
|
|
|
|
|
|
- context = dict(self.admin_site.each_context(request),
|
|
|
+ context = dict(
|
|
|
+ self.admin_site.each_context(request),
|
|
|
title=(_('Add %s') if add else _('Change %s')) % force_text(opts.verbose_name),
|
|
|
adminform=adminForm,
|
|
|
object_id=object_id,
|
|
@@ -1519,11 +1528,12 @@ class ModelAdmin(BaseModelAdmin):
|
|
|
|
|
|
ChangeList = self.get_changelist(request)
|
|
|
try:
|
|
|
- cl = ChangeList(request, self.model, list_display,
|
|
|
+ cl = ChangeList(
|
|
|
+ request, self.model, list_display,
|
|
|
list_display_links, list_filter, self.date_hierarchy,
|
|
|
search_fields, list_select_related, self.list_per_page,
|
|
|
- self.list_max_show_all, self.list_editable, self)
|
|
|
-
|
|
|
+ self.list_max_show_all, self.list_editable, self,
|
|
|
+ )
|
|
|
except IncorrectLookupParameters:
|
|
|
# Wacky lookup parameters were given, so redirect to the main
|
|
|
# changelist page, without parameters, and pass an 'invalid=1'
|
|
@@ -1596,11 +1606,15 @@ class ModelAdmin(BaseModelAdmin):
|
|
|
name = force_text(opts.verbose_name)
|
|
|
else:
|
|
|
name = force_text(opts.verbose_name_plural)
|
|
|
- msg = ungettext("%(count)s %(name)s was changed successfully.",
|
|
|
- "%(count)s %(name)s were changed successfully.",
|
|
|
- changecount) % {'count': changecount,
|
|
|
- 'name': name,
|
|
|
- 'obj': force_text(obj)}
|
|
|
+ msg = ungettext(
|
|
|
+ "%(count)s %(name)s was changed successfully.",
|
|
|
+ "%(count)s %(name)s were changed successfully.",
|
|
|
+ changecount
|
|
|
+ ) % {
|
|
|
+ 'count': changecount,
|
|
|
+ 'name': name,
|
|
|
+ 'obj': force_text(obj),
|
|
|
+ }
|
|
|
self.message_user(request, msg, messages.SUCCESS)
|
|
|
|
|
|
return HttpResponseRedirect(request.get_full_path())
|
|
@@ -1623,8 +1637,11 @@ class ModelAdmin(BaseModelAdmin):
|
|
|
else:
|
|
|
action_form = None
|
|
|
|
|
|
- selection_note_all = ungettext('%(total_count)s selected',
|
|
|
- 'All %(total_count)s selected', cl.result_count)
|
|
|
+ selection_note_all = ungettext(
|
|
|
+ '%(total_count)s selected',
|
|
|
+ 'All %(total_count)s selected',
|
|
|
+ cl.result_count
|
|
|
+ )
|
|
|
|
|
|
context = dict(
|
|
|
self.admin_site.each_context(request),
|
|
@@ -1744,7 +1761,8 @@ class ModelAdmin(BaseModelAdmin):
|
|
|
content_type=get_content_type_for_model(model)
|
|
|
).select_related().order_by('action_time')
|
|
|
|
|
|
- context = dict(self.admin_site.each_context(request),
|
|
|
+ context = dict(
|
|
|
+ self.admin_site.each_context(request),
|
|
|
title=_('Change history: %s') % force_text(obj),
|
|
|
action_list=action_list,
|
|
|
module_name=capfirst(force_text(opts.verbose_name_plural)),
|