Thanks for the response! Which lines of the widget code should we update? We are also using Docker to host our Django dev/production environments - is there a way to update widget code that will persist between builds?
On Monday, October 8, 2018 at 7:25:43 PM UTC-7, Aileen wrote: > > Hello, > > After upgrading Django from 2.0.8 to 2.1.2, the admin interface no longer > seems to work due to some problems with our widgets. This is the error that > I get: > > [image: image.png] > > And here is the full call stack: > > Environment: > > > Request Method: GET > Request URL: http://localhost:8000/admin/website/person/2/change/ > > Django Version: 2.1.2 > Python Version: 3.6.3 > Installed Applications: > ['website.apps.WebsiteConfig', > 'django.contrib.admin', > 'django.contrib.auth', > 'django.contrib.contenttypes', > 'django.contrib.sessions', > 'django.contrib.messages', > 'django.contrib.staticfiles', > 'django_extensions', > 'image_cropping', > 'easy_thumbnails', > 'sortedm2m', > 'sortedm2m_filter_horizontal_widget', > 'rest_framework'] > Installed Middleware: > ['django.middleware.security.SecurityMiddleware', > 'django.contrib.sessions.middleware.SessionMiddleware', > 'django.middleware.common.CommonMiddleware', > 'django.middleware.csrf.CsrfViewMiddleware', > 'django.contrib.auth.middleware.AuthenticationMiddleware', > 'django.contrib.messages.middleware.MessageMiddleware', > 'django.middleware.clickjacking.XFrameOptionsMiddleware'] > > > Template error: > In template > /usr/local/lib/python3.6/site-packages/django/contrib/admin/templates/admin/includes/fieldset.html, > error at line 19 > render() got an unexpected keyword argument 'renderer' > 9 : {% for field in line %} > 10 : <div{% if not line.fields|length_is:'1' %} > class="fieldBox{% if field.field.name %} field-{{ field.field.name }}{% endif > %}{% if not field.is_readonly and field.errors %} errors{% endif %}{% if > field.field.is_hidden %} hidden{% endif %}"{% elif field.is_checkbox %} > class="checkbox-row"{% endif %}> > 11 : {% if not line.fields|length_is:'1' and not > field.is_readonly %}{{ field.errors }}{% endif %} > 12 : {% if field.is_checkbox %} > 13 : {{ field.field }}{{ field.label_tag }} > 14 : {% else %} > 15 : {{ field.label_tag }} > 16 : {% if field.is_readonly %} > 17 : <div class="readonly">{{ field.contents > }}</div> > 18 : {% else %} > 19 : {{ field.field }} > 20 : {% endif %} > 21 : {% endif %} > 22 : {% if field.field.help_text %} > 23 : <div class="help">{{ > field.field.help_text|safe }}</div> > 24 : {% endif %} > 25 : </div> > 26 : {% endfor %} > 27 : </div> > 28 : {% endfor %} > 29 : </fieldset> > > > Traceback: > > File > "/usr/local/lib/python3.6/site-packages/django/core/handlers/exception.py" in > inner > 34. response = get_response(request) > > File "/usr/local/lib/python3.6/site-packages/django/core/handlers/base.py" in > _get_response > 156. response = self.process_exception_by_middleware(e, > request) > > File "/usr/local/lib/python3.6/site-packages/django/core/handlers/base.py" in > _get_response > 154. response = response.render() > > File "/usr/local/lib/python3.6/site-packages/django/template/response.py" in > render > 106. self.content = self.rendered_content > > File "/usr/local/lib/python3.6/site-packages/django/template/response.py" in > rendered_content > 83. content = template.render(context, self._request) > > File > "/usr/local/lib/python3.6/site-packages/django/template/backends/django.py" > in render > 61. return self.template.render(context) > > File "/usr/local/lib/python3.6/site-packages/django/template/base.py" in > render > 171. return self._render(context) > > File "/usr/local/lib/python3.6/site-packages/django/template/base.py" in > _render > 163. return self.nodelist.render(context) > > File "/usr/local/lib/python3.6/site-packages/django/template/base.py" in > render > 937. bit = node.render_annotated(context) > > File "/usr/local/lib/python3.6/site-packages/django/template/base.py" in > render_annotated > 904. return self.render(context) > > File "/usr/local/lib/python3.6/site-packages/django/template/loader_tags.py" > in render > 150. return compiled_parent._render(context) > > File "/usr/local/lib/python3.6/site-packages/django/template/base.py" in > _render > 163. return self.nodelist.render(context) > > File "/usr/local/lib/python3.6/site-packages/django/template/base.py" in > render > 937. bit = node.render_annotated(context) > > File "/usr/local/lib/python3.6/site-packages/django/template/base.py" in > render_annotated > 904. return self.render(context) > > File "/usr/local/lib/python3.6/site-packages/django/template/loader_tags.py" > in render > 150. return compiled_parent._render(context) > > File "/usr/local/lib/python3.6/site-packages/django/template/base.py" in > _render > 163. return self.nodelist.render(context) > > File "/usr/local/lib/python3.6/site-packages/django/template/base.py" in > render > 937. bit = node.render_annotated(context) > > File "/usr/local/lib/python3.6/site-packages/django/template/base.py" in > render_annotated > 904. return self.render(context) > > File "/usr/local/lib/python3.6/site-packages/django/template/loader_tags.py" > in render > 62. result = block.nodelist.render(context) > > File "/usr/local/lib/python3.6/site-packages/django/template/base.py" in > render > 937. bit = node.render_annotated(context) > > File "/usr/local/lib/python3.6/site-packages/django/template/base.py" in > render_annotated > 904. return self.render(context) > > File "/usr/local/lib/python3.6/site-packages/django/template/loader_tags.py" > in render > 62. result = block.nodelist.render(context) > > File "/usr/local/lib/python3.6/site-packages/django/template/base.py" in > render > 937. bit = node.render_annotated(context) > > File "/usr/local/lib/python3.6/site-packages/django/template/base.py" in > render_annotated > 904. return self.render(context) > > File "/usr/local/lib/python3.6/site-packages/django/template/defaulttags.py" > in render > 209. nodelist.append(node.render_annotated(context)) > > File "/usr/local/lib/python3.6/site-packages/django/template/base.py" in > render_annotated > 904. return self.render(context) > > File "/usr/local/lib/python3.6/site-packages/django/template/loader_tags.py" > in render > 188. return template.render(context) > > File "/usr/local/lib/python3.6/site-packages/django/template/base.py" in > render > 173. return self._render(context) > > File "/usr/local/lib/python3.6/site-packages/django/template/base.py" in > _render > 163. return self.nodelist.render(context) > > File "/usr/local/lib/python3.6/site-packages/django/template/base.py" in > render > 937. bit = node.render_annotated(context) > > File "/usr/local/lib/python3.6/site-packages/django/template/base.py" in > render_annotated > 904. return self.render(context) > > File "/usr/local/lib/python3.6/site-packages/django/template/defaulttags.py" > in render > 209. nodelist.append(node.render_annotated(context)) > > File "/usr/local/lib/python3.6/site-packages/django/template/base.py" in > render_annotated > 904. return self.render(context) > > File "/usr/local/lib/python3.6/site-packages/django/template/defaulttags.py" > in render > 209. nodelist.append(node.render_annotated(context)) > > File "/usr/local/lib/python3.6/site-packages/django/template/base.py" in > render_annotated > 904. return self.render(context) > > File "/usr/local/lib/python3.6/site-packages/django/template/defaulttags.py" > in render > 309. return nodelist.render(context) > > File "/usr/local/lib/python3.6/site-packages/django/template/base.py" in > render > 937. bit = node.render_annotated(context) > > File "/usr/local/lib/python3.6/site-packages/django/template/base.py" in > render_annotated > 904. return self.render(context) > > File "/usr/local/lib/python3.6/site-packages/django/template/defaulttags.py" > in render > 309. return nodelist.render(context) > > File "/usr/local/lib/python3.6/site-packages/django/template/base.py" in > render > 937. bit = node.render_annotated(context) > > File "/usr/local/lib/python3.6/site-packages/django/template/base.py" in > render_annotated > 904. return self.render(context) > > File "/usr/local/lib/python3.6/site-packages/django/template/base.py" in > render > 993. return render_value_in_context(output, context) > > File "/usr/local/lib/python3.6/site-packages/django/template/base.py" in > render_value_in_context > 972. value = str(value) > > File "/usr/local/lib/python3.6/site-packages/django/utils/html.py" in <lambda> > 397. klass.__str__ = lambda self: mark_safe(klass_str(self)) > > File "/usr/local/lib/python3.6/site-packages/django/forms/boundfield.py" in > __str__ > 33. return self.as_widget() > > File "/usr/local/lib/python3.6/site-packages/django/forms/boundfield.py" in > as_widget > 93. renderer=self.form.renderer, > > Exception Type: TypeError at /admin/website/person/2/change/ > Exception Value: render() got an unexpected keyword argument 'renderer' > > > It seems like downgrading to 2.0.8 temporarily fixes our problem, but I > was wondering if there is a better fix that allows us to have 2.1.2 + a > working admin interface? > > Thanks. > -- You received this message because you are subscribed to the Google Groups "Django users" group. To unsubscribe from this group and stop receiving emails from it, send an email to django-users+unsubscr...@googlegroups.com. To post to this group, send email to django-users@googlegroups.com. Visit this group at https://groups.google.com/group/django-users. To view this discussion on the web visit https://groups.google.com/d/msgid/django-users/4ae5be1b-3438-482d-a501-4258bc94e80c%40googlegroups.com. For more options, visit https://groups.google.com/d/optout.