diff options
author | Étienne Loks <etienne.loks@iggdrasil.net> | 2017-08-22 00:31:56 +0200 |
---|---|---|
committer | Étienne Loks <etienne.loks@iggdrasil.net> | 2017-08-22 00:31:56 +0200 |
commit | d8e86c6d50d5d50cd11a3aabef5ccc0b6d71cfed (patch) | |
tree | 50ed3dbd56724470f898bb58a14264051377277b /ishtar_common | |
parent | 9314f621ef3989ebe6aa01c44fd501299fef8d53 (diff) | |
download | Ishtar-d8e86c6d50d5d50cd11a3aabef5ccc0b6d71cfed.tar.bz2 Ishtar-d8e86c6d50d5d50cd11a3aabef5ccc0b6d71cfed.zip |
Django 1.11: use render() instead render_to_response - pass dict to templates
Diffstat (limited to 'ishtar_common')
-rw-r--r-- | ishtar_common/admin.py | 7 | ||||
-rw-r--r-- | ishtar_common/templatetags/window_tables.py | 8 | ||||
-rw-r--r-- | ishtar_common/views.py | 52 | ||||
-rw-r--r-- | ishtar_common/widgets.py | 17 | ||||
-rw-r--r-- | ishtar_common/wizards.py | 26 |
5 files changed, 45 insertions, 65 deletions
diff --git a/ishtar_common/admin.py b/ishtar_common/admin.py index c5166b3f2..4af60fa90 100644 --- a/ishtar_common/admin.py +++ b/ishtar_common/admin.py @@ -27,8 +27,7 @@ from django.contrib.auth.admin import GroupAdmin, UserAdmin from django.contrib.auth.models import Group, User from django.contrib.gis.forms import PointField, OSMWidget from django.http import HttpResponseRedirect, HttpResponse -from django.shortcuts import render_to_response -from django.template import RequestContext +from django.shortcuts import render from django.template.defaultfilters import slugify from django.utils.translation import ugettext_lazy as _ @@ -70,9 +69,7 @@ def gen_import_generic(self, request, queryset): form = ImportGenericForm( initial={'_selected_action': request.POST.getlist(admin.ACTION_CHECKBOX_NAME)}) - return render_to_response( - 'admin/import_from_csv.html', {'csv_form': form}, - context_instance=RequestContext(request)) + return render(request, 'admin/import_from_csv.html', {'csv_form': form}) gen_import_generic.short_description = "Import from a CSV file" diff --git a/ishtar_common/templatetags/window_tables.py b/ishtar_common/templatetags/window_tables.py index bf4dd2b1a..00274c25f 100644 --- a/ishtar_common/templatetags/window_tables.py +++ b/ishtar_common/templatetags/window_tables.py @@ -84,7 +84,7 @@ def dynamic_table_document( if output == 'html': col_names, extra_cols = grid.get_cols() t = get_template('ishtar/blocks/window_tables/dynamic_documents.html') - context = template.Context({ + context = { 'caption': caption, 'name': '{}{}{}'.format(slugify(caption), key, int(time.time())), 'source': source + source_attrs, @@ -97,7 +97,7 @@ def dynamic_table_document( 'loading': unicode(_("Loading...")), 'encoding': settings.ENCODING or 'utf-8', 'large': large - }) + } return t.render(context) else: col_names, extra_cols = grid.get_cols(python=True) @@ -126,11 +126,11 @@ def dynamic_table_document( d.append('') data.append(d) t = get_template('ishtar/blocks/window_tables/static_documents.html') - context = template.Context({ + context = { 'caption': caption, 'col_names': col_names, 'data': data - }) + } return t.render(context) diff --git a/ishtar_common/views.py b/ishtar_common/views.py index 8ab07fc00..9a6fdbdcd 100644 --- a/ishtar_common/views.py +++ b/ishtar_common/views.py @@ -19,7 +19,7 @@ from tidylib import tidy_document as tidy -from copy import copy +from copy import copy, deepcopy import csv import cStringIO as StringIO import datetime @@ -48,8 +48,8 @@ from django.db.models.fields import FieldDoesNotExist from django.forms.models import modelformset_factory from django.http import HttpResponse, Http404, HttpResponseRedirect, \ HttpResponseBadRequest -from django.shortcuts import render_to_response, redirect -from django.template import RequestContext, loader +from django.shortcuts import redirect, render +from django.template import loader from django.utils.decorators import method_decorator from django.utils.translation import ugettext, ugettext_lazy as _ from django.views.generic import ListView, UpdateView, TemplateView @@ -114,13 +114,11 @@ def index(request): else: dct['random_image'] = image try: - return render_to_response('index.html', dct, - context_instance=RequestContext(request)) + return render(request, 'index.html', dct) except NoReverseMatch: # probably rights exception (rights revoked) logout(request) - return render_to_response('index.html', dct, - context_instance=RequestContext(request)) + return render(request, 'index.html', dct) person_search_wizard = wizards.SearchWizard.as_view( [('general-person_search', forms.PersonFormSelection)], @@ -296,9 +294,9 @@ def shortcut_menu(request): model).render( model.SLUG + '-shortcut', value=current, attrs={'id': 'current_' + model.SLUG}))) - return render_to_response( - 'ishtar/blocks/advanced_shortcut_menu.html', - dct, context_instance=RequestContext(request)) + return render( + request, 'ishtar/blocks/advanced_shortcut_menu.html', dct + ) dct = { 'current_menu': [], 'SHORTCUT_SHOW': request.session['SHORTCUT_SHOW'] @@ -341,8 +339,7 @@ def shortcut_menu(request): dct['current_menu'].append((lbl, model_name, cls, items)) if new_selected_item: current_selected_item[model_name] = new_selected_item - return render_to_response('ishtar/blocks/shortcut_menu.html', dct, - context_instance=RequestContext(request)) + return render(request, 'ishtar/blocks/shortcut_menu.html', dct) CURRENT_ITEM_KEYS = (('file', File), ('operation', Operation), @@ -1211,8 +1208,7 @@ def display_item(model, extra_dct=None, show_url=None): dct['show_url'] = "/{}{}/".format(show_url, pk) else: dct['show_url'] = "/show-{}/{}/".format(model.SLUG, pk) - return render_to_response('ishtar/display_item.html', dct, - context_instance=RequestContext(request)) + return render(request, 'ishtar/display_item.html', dct) return func @@ -1262,8 +1258,7 @@ def show_item(model, name, extra_dct=None): # add context if extra_dct: dct.update(extra_dct(request, item)) - context_instance = RequestContext(request) - context_instance.update(dct) + context_instance = deepcopy(dct) context_instance['output'] = 'html' if hasattr(item, 'history_object'): filename = item.history_object.associated_filename @@ -1414,13 +1409,10 @@ def new_item(model, frm, many=False): if dct['parent_pk'] and '_select_' in dct['parent_pk']: parents = dct['parent_pk'].split('_') dct['parent_pk'] = "_".join([parents[0]] + parents[2:]) - return render_to_response( - 'window.html', dct, - context_instance=RequestContext(request)) + return render(request, 'window.html', dct) else: dct['form'] = frm(limits=limits) - return render_to_response('window.html', dct, - context_instance=RequestContext(request)) + return render(request, 'window.html', dct) return func new_person = new_item(models.Person, forms.PersonForm) @@ -1449,8 +1441,7 @@ def action(request, action_slug, obj_id=None, *args, **kwargs): globals_dct = globals() if action_slug in globals_dct: return globals_dct[action_slug](request, dct, obj_id, *args, **kwargs) - return render_to_response('index.html', dct, - context_instance=RequestContext(request)) + return render(request, 'index.html', dct) def dashboard_main(request, dct, obj_id=None, *args, **kwargs): @@ -1470,8 +1461,7 @@ def dashboard_main(request, dct, obj_id=None, *args, **kwargs): app_list.append((_(u"Treatment requests"), 'treatmentfiles')) app_list.append((_(u"Treatments"), 'treatments')) dct = {'app_list': app_list} - return render_to_response('ishtar/dashboards/dashboard_main.html', dct, - context_instance=RequestContext(request)) + return render(request, 'ishtar/dashboards/dashboard_main.html', dct) DASHBOARD_FORMS = { 'files': DashboardFormFile, 'operations': DashboardFormOpe, @@ -1486,9 +1476,8 @@ def dashboard_main_detail(request, item_name): """ if item_name == 'users': dct = {'ishtar_users': models.UserDashboard()} - return render_to_response( - 'ishtar/dashboards/dashboard_main_detail_users.html', - dct, context_instance=RequestContext(request)) + return render( + request, 'ishtar/dashboards/dashboard_main_detail_users.html', dct) form = None slicing, date_source, fltr, show_detail = 'year', None, {}, False profile = models.get_current_profile() @@ -1552,8 +1541,7 @@ def dashboard_main_detail(request, item_name): n = datetime.datetime.now() dct['unique_id'] = dct['item_name'] + "_" + \ '%d_%d_%d' % (n.minute, n.second, n.microsecond) - return render_to_response('ishtar/dashboards/dashboard_main_detail.html', - dct, context_instance=RequestContext(request)) + return render(request, 'ishtar/dashboards/dashboard_main_detail.html', dct) def reset_wizards(request): @@ -1605,9 +1593,7 @@ def merge_action(model, form, key): return redirect(reverse(current_url, kwargs={'page': page})) else: context['formset'] = FormSet(queryset=queryset) - return render_to_response( - 'ishtar/merge_' + key + '.html', context, - context_instance=RequestContext(request)) + return render(request, 'ishtar/merge_' + key + '.html', context) return merge diff --git a/ishtar_common/widgets.py b/ishtar_common/widgets.py index bb090346b..37a243c7d 100644 --- a/ishtar_common/widgets.py +++ b/ishtar_common/widgets.py @@ -29,7 +29,7 @@ from django.forms import ClearableFileInput from django.forms.utils import flatatt from django.forms.widgets import CheckboxSelectMultiple as \ CheckboxSelectMultipleBase -from django.template import Context, loader +from django.template import loader from django.template.defaultfilters import slugify from django.utils.encoding import smart_unicode from django.utils.functional import lazy @@ -216,7 +216,7 @@ class SquareMeterWidget(forms.TextInput): 'id': attrs['id'], "safe_id": attrs['id'].replace('-', '_')} t = loader.get_template('blocks/SquareMeterWidget.html') - rendered = t.render(Context(dct)) + rendered = t.render(dct) return mark_safe(rendered) AreaWidget = forms.TextInput @@ -319,7 +319,7 @@ class JQueryAutoComplete(forms.TextInput): if self.multiple: tpl = 'blocks/JQueryAutocompleteMultiple.js' t = loader.get_template(tpl) - js = t.render(Context(dct)) + js = t.render(dct) return js def render(self, name, value=None, attrs=None): @@ -488,7 +488,7 @@ class JQueryTown(forms.TextInput): 'selected_state': selected_state} ) html = loader.get_template('blocks/JQueryAdvancedTown.html')\ - .render(Context(dct)) + .render(dct) return html @@ -541,7 +541,7 @@ class JQueryPersonOrganization(forms.TextInput): 'field_id': field_id} if self.options: dct['options'] = mark_safe('%s' % self.options) - js = loader.get_template(self.js_template).render(Context(dct)) + js = loader.get_template(self.js_template).render(dct) return js def render(self, name, value=None, attrs=None): @@ -587,7 +587,7 @@ class JQueryPersonOrganization(forms.TextInput): 'name': name, 'js': self.render_js(name, selected), 'new': mark_safe(new)} - html = loader.get_template(self.html_template).render(Context(dct)) + html = loader.get_template(self.html_template).render(dct) return html @@ -696,8 +696,7 @@ class JQueryJqGrid(forms.RadioSelect): def render(self, name, value=None, attrs=None): t = loader.get_template('blocks/form_flex_snippet.html') form = self.form() - rendered = t.render(Context({'form': form, - 'flex': True})) + rendered = t.render({'form': form, 'flex': True}) dct = {} if self.new: model_name = self.associated_model._meta.object_name.lower() @@ -745,5 +744,5 @@ class JQueryJqGrid(forms.RadioSelect): 'multi_cols': ",".join((u'"%d"' % col for col in self.multiple_cols))}) t = loader.get_template('blocks/JQueryJqGrid.html') - rendered += t.render(Context(dct)) + rendered += t.render(dct) return mark_safe(rendered) diff --git a/ishtar_common/wizards.py b/ishtar_common/wizards.py index 5217eafae..4a7181e9f 100644 --- a/ishtar_common/wizards.py +++ b/ishtar_common/wizards.py @@ -36,8 +36,8 @@ from django.db.models.fields import NOT_PROVIDED from django.http import HttpResponseRedirect from django.forms import ValidationError -from django.shortcuts import render_to_response, redirect -from django.template import Context, RequestContext, loader +from django.shortcuts import redirect, render +from django.template import loader from django.utils.datastructures import MultiValueDict as BaseMultiValueDict from django.utils.translation import ugettext_lazy as _ @@ -778,8 +778,7 @@ class Wizard(NamedUrlWizardView): wizard_done_window = unicode(self.wizard_done_window) if wizard_done_window: dct['wizard_done_window'] = wizard_done_window - res = render_to_response(self.wizard_done_template, dct, - context_instance=RequestContext(self.request)) + res = render(self.request, self.wizard_done_template, dct) return return_object and (obj, res) or res def get_deleted(self, keys): @@ -1253,9 +1252,8 @@ class DeletionWizard(Wizard): obj.delete() except ObjectDoesNotExist: pass - return render_to_response( - 'ishtar/wizard/wizard_delete_done.html', {}, - context_instance=RequestContext(self.request)) + return render( + self.request, 'ishtar/wizard/wizard_delete_done.html', {}) class ClosingWizard(Wizard): @@ -1306,9 +1304,8 @@ class ClosingWizard(Wizard): and hasattr(obj, 'end_date'): obj.end_date = form.cleaned_data['end_date'] obj.save() - return render_to_response( - 'ishtar/wizard/wizard_closing_done.html', {}, - context_instance=RequestContext(self.request)) + return render( + self.request, 'ishtar/wizard/wizard_closing_done.html', {}) class PersonWizard(Wizard): @@ -1417,20 +1414,21 @@ class AccountWizard(Wizard): app_name = site and ("Ishtar - " + site.name) \ or "Ishtar" - context = Context({ + context = { 'login': dct['username'], 'password': dct['password'], 'app_name': app_name, 'site': site and site.domain or "" - }) + } t = loader.get_template('account_activation_email.txt') msg = t.render(context) subject = _(u"[%(app_name)s] Account creation/modification") % { "app_name": app_name} send_mail(subject, msg, settings.ADMINS[0][1], [dct['email']], fail_silently=True) - res = render_to_response('ishtar/wizard/wizard_done.html', {}, - context_instance=RequestContext(self.request)) + res = render( + self.request, 'ishtar/wizard/wizard_done.html', {}, + ) return res def get_form_kwargs(self, step=None): |