Ticket #18180: admin_common_context.diff

File admin_common_context.diff, 6.8 KB (added by Stefano Apostolico, 12 years ago)
  • django/contrib/admin/options.py

     
    212212        """
    213213        return self.prepopulated_fields
    214214
     215    def get_context_data(self, **kwargs):
     216        return kwargs
     217
    215218    def queryset(self, request):
    216219        """
    217220        Returns a QuerySet of all model instances that can be edited by the
     
    736739        opts = self.model._meta
    737740        app_label = opts.app_label
    738741        ordered_objects = opts.get_ordered_objects()
     742        context = self.get_context_data(**context)
    739743        context.update({
    740744            'add': add,
    741745            'change': change,
     
    994998            inline_admin_formsets.append(inline_admin_formset)
    995999            media = media + inline_admin_formset.media
    9961000
    997         context = {
     1001        context = self.get_context_data(**{
    9981002            'title': _('Add %s') % force_unicode(opts.verbose_name),
    9991003            'adminform': adminForm,
    10001004            'is_popup': "_popup" in request.REQUEST,
     
    10031007            'inline_admin_formsets': inline_admin_formsets,
    10041008            'errors': helpers.AdminErrorList(form, formsets),
    10051009            'app_label': opts.app_label,
    1006         }
     1010        })
    10071011        context.update(extra_context or {})
    10081012        return self.render_change_form(request, context, form_url=form_url, add=True)
    10091013
     
    10851089            inline_admin_formsets.append(inline_admin_formset)
    10861090            media = media + inline_admin_formset.media
    10871091
    1088         context = {
     1092        context = self.get_context_data(**{
    10891093            'title': _('Change %s') % force_unicode(opts.verbose_name),
    10901094            'adminform': adminForm,
    10911095            'object_id': object_id,
     
    10951099            'inline_admin_formsets': inline_admin_formsets,
    10961100            'errors': helpers.AdminErrorList(form, formsets),
    10971101            'app_label': opts.app_label,
    1098         }
     1102        })
    10991103        context.update(extra_context or {})
    11001104        return self.render_change_form(request, context, change=True, obj=obj, form_url=form_url)
    11011105
     
    12281232        selection_note_all = ungettext('%(total_count)s selected',
    12291233            'All %(total_count)s selected', cl.result_count)
    12301234
    1231         context = {
     1235        context = self.get_context_data(**{
    12321236            'module_name': force_unicode(opts.verbose_name_plural),
    12331237            'selection_note': _('0 of %(cnt)s selected') % {'cnt': len(cl.result_list)},
    12341238            'selection_note_all': selection_note_all % {'total_count': cl.result_count},
     
    12421246            'actions_on_top': self.actions_on_top,
    12431247            'actions_on_bottom': self.actions_on_bottom,
    12441248            'actions_selection_counter': self.actions_selection_counter,
    1245         }
     1249        })
    12461250        context.update(extra_context or {})
    12471251
    12481252        return TemplateResponse(request, self.change_list_template or [
     
    12961300        else:
    12971301            title = _("Are you sure?")
    12981302
    1299         context = {
     1303        context = self.get_context_data(**{
    13001304            "title": title,
    13011305            "object_name": object_name,
    13021306            "object": obj,
     
    13051309            "protected": protected,
    13061310            "opts": opts,
    13071311            "app_label": app_label,
    1308         }
     1312        })
    13091313        context.update(extra_context or {})
    13101314
    13111315        return TemplateResponse(request, self.delete_confirmation_template or [
     
    13261330        ).select_related().order_by('action_time')
    13271331        # If no history was found, see whether this object even exists.
    13281332        obj = get_object_or_404(model, pk=unquote(object_id))
    1329         context = {
     1333        context = self.get_context_data(**{
    13301334            'title': _('Change history: %s') % force_unicode(obj),
    13311335            'action_list': action_list,
    13321336            'module_name': capfirst(force_unicode(opts.verbose_name_plural)),
    13331337            'object': obj,
    13341338            'app_label': app_label,
    13351339            'opts': opts,
    1336         }
     1340        })
    13371341        context.update(extra_context or {})
    13381342        return TemplateResponse(request, self.object_history_template or [
    13391343            "admin/%s/%s/object_history.html" % (app_label, opts.object_name.lower()),
  • django/contrib/admin/sites.py

     
    128128        """
    129129        return self._global_actions[name]
    130130
     131    def get_context_data(self, **kwargs):
     132        return kwargs
     133
    131134    @property
    132135    def actions(self):
    133136        """
     
    270273        from django.contrib.auth.views import password_change_done
    271274        defaults = {
    272275            'current_app': self.name,
    273             'extra_context': extra_context or {},
     276            'extra_context': self.get_context_data(**(extra_context or {})),
    274277        }
    275278        if self.password_change_done_template is not None:
    276279            defaults['template_name'] = self.password_change_done_template
     
    299302        from django.contrib.auth.views import logout
    300303        defaults = {
    301304            'current_app': self.name,
    302             'extra_context': extra_context or {},
     305            'extra_context': self.get_context_data(**(extra_context or {})),
    303306        }
    304307        if self.logout_template is not None:
    305308            defaults['template_name'] = self.logout_template
     
    311314        Displays the login form for the given HttpRequest.
    312315        """
    313316        from django.contrib.auth.views import login
    314         context = {
     317        context = self.get_context_data(**{
    315318            'title': _('Log in'),
    316319            'app_path': request.get_full_path(),
    317320            REDIRECT_FIELD_NAME: request.get_full_path(),
    318         }
     321        })
    319322        context.update(extra_context or {})
    320323        defaults = {
    321324            'extra_context': context,
     
    376379        for app in app_list:
    377380            app['models'].sort(key=lambda x: x['name'])
    378381
    379         context = {
     382        context = self.get_context_data(**{
    380383            'title': _('Site administration'),
    381384            'app_list': app_list,
    382         }
     385        })
    383386        context.update(extra_context or {})
    384387        return TemplateResponse(request, [
    385388            self.index_template or 'admin/index.html',
     
    428431            raise Http404('The requested admin page does not exist.')
    429432        # Sort the models alphabetically within each app.
    430433        app_dict['models'].sort(key=lambda x: x['name'])
    431         context = {
     434        context = self.get_context_data(**{
    432435            'title': _('%s administration') % capfirst(app_label),
    433436            'app_list': [app_dict],
    434         }
     437        })
    435438        context.update(extra_context or {})
    436439
    437440        return TemplateResponse(request, self.app_index_template or [
Back to Top