DistrictDataLabs / logbook

A simple web application for activity tracking and event aggregation.
https://ddl-logbook.herokuapp.com/
Apache License 2.0
4 stars 1 forks source link

Unicode Error in Enrollment #25

Closed bbengfort closed 8 years ago

bbengfort commented 8 years ago
Internal Server Error: /admin/catalog/enrollment/
Traceback (most recent call last):
  File "/app/.heroku/python/lib/python2.7/site-packages/django/core/handlers/base.py", line 164, in get_response
    response = response.render()
  File "/app/.heroku/python/lib/python2.7/site-packages/django/template/response.py", line 158, in render
    self.content = self.rendered_content
  File "/app/.heroku/python/lib/python2.7/site-packages/django/template/response.py", line 135, in rendered_content
    content = template.render(context, self._request)
  File "/app/.heroku/python/lib/python2.7/site-packages/django/template/backends/django.py", line 74, in render
    return self.template.render(context)
  File "/app/.heroku/python/lib/python2.7/site-packages/django/template/base.py", line 209, in render
    return self._render(context)
  File "/app/.heroku/python/lib/python2.7/site-packages/django/template/base.py", line 201, in _render
    return self.nodelist.render(context)
  File "/app/.heroku/python/lib/python2.7/site-packages/django/template/base.py", line 903, in render
    bit = self.render_node(node, context)
  File "/app/.heroku/python/lib/python2.7/site-packages/django/template/base.py", line 917, in render_node
    return node.render(context)
  File "/app/.heroku/python/lib/python2.7/site-packages/django/template/loader_tags.py", line 135, in render
    return compiled_parent._render(context)
  File "/app/.heroku/python/lib/python2.7/site-packages/django/template/base.py", line 201, in _render
    return self.nodelist.render(context)
  File "/app/.heroku/python/lib/python2.7/site-packages/django/template/base.py", line 903, in render
    bit = self.render_node(node, context)
  File "/app/.heroku/python/lib/python2.7/site-packages/django/template/base.py", line 917, in render_node
    return node.render(context)
  File "/app/.heroku/python/lib/python2.7/site-packages/django/template/loader_tags.py", line 135, in render
    return compiled_parent._render(context)
  File "/app/.heroku/python/lib/python2.7/site-packages/django/template/base.py", line 201, in _render
    return self.nodelist.render(context)
  File "/app/.heroku/python/lib/python2.7/site-packages/django/template/base.py", line 903, in render
    bit = self.render_node(node, context)
  File "/app/.heroku/python/lib/python2.7/site-packages/django/template/base.py", line 917, in render_node
    return node.render(context)
  File "/app/.heroku/python/lib/python2.7/site-packages/django/template/loader_tags.py", line 65, in render
    result = block.nodelist.render(context)
  File "/app/.heroku/python/lib/python2.7/site-packages/django/template/base.py", line 903, in render
    bit = self.render_node(node, context)
  File "/app/.heroku/python/lib/python2.7/site-packages/django/template/base.py", line 917, in render_node
    return node.render(context)
  File "/app/.heroku/python/lib/python2.7/site-packages/django/template/loader_tags.py", line 65, in render
    result = block.nodelist.render(context)
  File "/app/.heroku/python/lib/python2.7/site-packages/django/template/base.py", line 903, in render
    bit = self.render_node(node, context)
  File "/app/.heroku/python/lib/python2.7/site-packages/django/template/base.py", line 917, in render_node
    return node.render(context)
  File "/app/.heroku/python/lib/python2.7/site-packages/django/template/base.py", line 1271, in render
    _dict = func(*resolved_args, **resolved_kwargs)
  File "/app/.heroku/python/lib/python2.7/site-packages/django/contrib/admin/templatetags/admin_list.py", line 320, in result_list
    'results': list(results(cl))}
  File "/app/.heroku/python/lib/python2.7/site-packages/django/contrib/admin/templatetags/admin_list.py", line 296, in results
    yield ResultList(None, items_for_result(cl, res, None))
  File "/app/.heroku/python/lib/python2.7/site-packages/django/contrib/admin/templatetags/admin_list.py", line 287, in __init__
    super(ResultList, self).__init__(*items)
  File "/app/.heroku/python/lib/python2.7/site-packages/django/contrib/admin/templatetags/admin_list.py", line 199, in items_for_result
    f, attr, value = lookup_field(field_name, result, cl.model_admin)
  File "/app/.heroku/python/lib/python2.7/site-packages/django/contrib/admin/utils.py", line 282, in lookup_field
    value = attr()
  File "/app/.heroku/python/lib/python2.7/site-packages/django/db/models/base.py", line 503, in __str__
    return force_text(self).encode('utf-8')
  File "/app/.heroku/python/lib/python2.7/site-packages/django/utils/encoding.py", line 92, in force_text
    s = six.text_type(s)
  File "/app/catalog/models.py", line 150, in __unicode__
    return "{} enrolled in {}".format(self.user.profile.full_name, self.course)
UnicodeEncodeError: 'ascii' codec can't encode character u'\x92' in position 4: ordinal not in range(128)
bbengfort commented 8 years ago

@ojedatony1616 Ok, this looks like a pretty simple bug - either someone's name or a course contained a unicode character that couldn't be decoded. Let me know if you can spot what it is; but I should be able to make the fix easily when I get some time.

bbengfort commented 8 years ago

So now that we've changed over to Python 3 -- we're completely in Unicode land, and I'm hoping that solves some of these issues. Marking as wont fix right now and if it comes up again, we'll just have to note what's happening in 3 land.