Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/354.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python UnicodeEncodeError:&x27;ascii';编解码器可以';t编码字符u'\xc5&x27;位置35:序号不在范围内(128)_Python_Django_Encoding_Utf 8_Django Admin - Fatal编程技术网

Python UnicodeEncodeError:&x27;ascii';编解码器可以';t编码字符u'\xc5&x27;位置35:序号不在范围内(128)

Python UnicodeEncodeError:&x27;ascii';编解码器可以';t编码字符u'\xc5&x27;位置35:序号不在范围内(128),python,django,encoding,utf-8,django-admin,Python,Django,Encoding,Utf 8,Django Admin,我目前正在使用获取表单字段的ISO国家名称列表。它在我的网站上显示时没有错误,但在Django的管理网站上,由于存在非ASCII国家名称,它会导致上述错误: Unicode错误提示:无法编码/解码的字符串为:itanÅland 我已经读到类似的问题可以通过encode('utf-8')属性来解决,但是如果不接触Django Admin本身,这似乎不是很可行。如果有人能解决这个问题,我将不胜感激 Models.py(消息): 从未来导入unicode文字 从django.db导入模型 从auth.

我目前正在使用获取表单字段的ISO国家名称列表。它在我的网站上显示时没有错误,但在Django的管理网站上,由于存在非ASCII国家名称,它会导致上述错误:

Unicode错误提示:无法编码/解码的字符串为:itanÅland

我已经读到类似的问题可以通过
encode('utf-8')
属性来解决,但是如果不接触Django Admin本身,这似乎不是很可行。如果有人能解决这个问题,我将不胜感激

Models.py(消息):

从未来导入unicode文字 从django.db导入模型 从auth.models导入用户 从tourlisting.models导入教程 课程日程安排(models.Model): 开始日期=models.DateField() end_date=models.DateField() 定义(自我): 返回“行程表”+str(self.id) 课堂活动(models.Model): 开始时间=models.DateTimeField() end_time=models.DateTimeField() description=models.CharField(最大长度=500,默认值=“”) 位置=型号.CharField(最大长度=200) 行程=型号。外键(行程) 类ThreadManager(models.Manager): def create_线程(自我、旅行、行程、旅行者): thread=self.create(旅游=旅游,行程=旅游,旅行者=旅行者) 回位螺纹 类线程(models.Model): tour=模型。外键(tour) 行程=型号。ForeignKey(行程,null=True) traveller=型号。外键(用户) 对象=线程管理器() 定义(自我): 返回“线程”+str(self.id) 类消息(models.Model): message=models.TextField() sender=models.ForeignKey(用户,相关的\u name='sent\u messages') 线程=模型。外键(线程) 发送的时间=models.DateTimeField(自动现在添加=True) time\u read=models.DateTimeField(null=True,blank=True) Models.py(tourlisting):

从未来导入unicode文字 从django.db导入模型 从auth.models导入用户配置文件,用户 从djmoney.models.fields导入MoneyField 从django.utils导入时区 从django_countries.fields导入CountryField 导入日期时间 类别(models.Model): name=models.CharField(最大长度=100,唯一性=True) 定义(自我): 返回self.name 课堂参观(模型.模型): tour_name=models.CharField(最大长度=100,默认值=“”) tour_desc=models.CharField('tour Description',max_length=10000,默认值=“”) 导游=模型。外键(用户配置文件) 巡更长度=models.IntegerField('巡更长度(天)”,默认值为3) country=CountryField(默认值为“”,最大长度为100) city=models.CharField(最大长度=1000,默认值=“”) ppl_min=models.IntegerField('最小旅行人数',默认值=1) ppl_max=models.IntegerField('if travelers'的最大数量),默认值为10) 价格=货币字段(最大数字=6,小数点=2,默认货币=USD,默认值=50) 类别=型号。外键(类别) 发布日期=models.DateField('datepublished',auto\u now\u add=True) active=models.BooleanField(默认值=True) 已删除=models.BooleanField(默认值=False) 定义(自我): 按{1}返回“{0}”。格式(self.tour\u name,self.tour\u guide) def最近被列入(自我): return self.pub_date>=timezone.now()-datetime.timedelta(天=7) 堆栈跟踪:

Environment: Request Method: GET Request URL: http://localhost:8000/admin/messaging/thread/2/change/ Django Version: 1.9.2 Python Version: 2.7.10 Installed Applications: ('django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.sessions', 'django.contrib.sites', 'django.contrib.messages', 'django.contrib.admin', 'django.contrib.staticfiles', 'messaging', 'crispy_forms', 'djmoney', 'django_countries', 'haystack', 'pysolr', 'django_tables2', 'phonenumber_field', 'django_extensions') Installed Middleware: ('django.contrib.sessions.middleware.SessionMiddleware', 'django.middleware.common.CommonMiddleware', 'django.middleware.csrf.CsrfViewMiddleware', 'django.contrib.auth.middleware.AuthenticationMiddleware', 'django.contrib.auth.middleware.SessionAuthenticationMiddleware', 'django.contrib.messages.middleware.MessageMiddleware', 'django.middleware.clickjacking.XFrameOptionsMiddleware', 'django.middleware.security.SecurityMiddleware') Template error: In template /usr/local/lib/python2.7/dist-packages/django/contrib/admin/templates/admin/change_form.html, error at line 33 ascii 23 : {% endblock %} 24 : {% endif %} 25 : 26 : {% block content %} 27 : {% block object-tools %} 28 : {% if change %}{% if not is_popup %} 29 : 30 : {% block object-tools-items %} 31 :
  • 32 : {% url opts|admin_urlname:'history' original.pk|admin_urlquote as history_url %} 33 : {% trans "History" %} 34 :
  • 35 : {% if has_absolute_url %}
  • {% trans "View on site" %}
  • {% endif %} 36 : {% endblock %} 37 : 38 : {% endif %}{% endif %} 39 : {% endblock %} 40 : {% csrf_token %}{% block form_top %}{% endblock %} 41 : 42 : {% if is_popup %}{% endif %} 43 : {% if to_field %}{% endif %} Traceback: File "/usr/local/lib/python2.7/dist-packages/django/core/handlers/base.py" in get_response 174. response = self.process_exception_by_middleware(e, request) File "/usr/local/lib/python2.7/dist-packages/django/core/handlers/base.py" in get_response 172. response = response.render() File "/usr/local/lib/python2.7/dist-packages/django/template/response.py" in render 160. self.content = self.rendered_content File "/usr/local/lib/python2.7/dist-packages/django/template/response.py" in rendered_content 137. content = template.render(context, self._request) File "/usr/local/lib/python2.7/dist-packages/django/template/backends/django.py" in render 95. return self.template.render(context) File "/usr/local/lib/python2.7/dist-packages/django/template/base.py" in render 206. return self._render(context) File "/usr/local/lib/python2.7/dist-packages/django/template/base.py" in _render 197. return self.nodelist.render(context) File "/usr/local/lib/python2.7/dist-packages/django/template/base.py" in render 992. bit = node.render_annotated(context) File "/usr/local/lib/python2.7/dist-packages/django/template/base.py" in render_annotated 959. return self.render(context) File "/usr/local/lib/python2.7/dist-packages/django/template/loader_tags.py" in render 173. return compiled_parent._render(context) File "/usr/local/lib/python2.7/dist-packages/django/template/base.py" in _render 197. return self.nodelist.render(context) File "/usr/local/lib/python2.7/dist-packages/django/template/base.py" in render 992. bit = node.render_annotated(context) File "/usr/local/lib/python2.7/dist-packages/django/template/base.py" in render_annotated 959. return self.render(context) File "/usr/local/lib/python2.7/dist-packages/django/template/loader_tags.py" in render 173. return compiled_parent._render(context) File "/usr/local/lib/python2.7/dist-packages/django/template/base.py" in _render 197. return self.nodelist.render(context) File "/usr/local/lib/python2.7/dist-packages/django/template/base.py" in render 992. bit = node.render_annotated(context) File "/usr/local/lib/python2.7/dist-packages/django/template/base.py" in render_annotated 959. return self.render(context) File "/usr/local/lib/python2.7/dist-packages/django/template/loader_tags.py" in render 69. result = block.nodelist.render(context) File "/usr/local/lib/python2.7/dist-packages/django/template/base.py" in render 992. bit = node.render_annotated(context) File "/usr/local/lib/python2.7/dist-packages/django/template/base.py" in render_annotated 959. return self.render(context) File "/usr/local/lib/python2.7/dist-packages/django/template/loader_tags.py" in render 69. result = block.nodelist.render(context) File "/usr/local/lib/python2.7/dist-packages/django/template/base.py" in render 992. bit = node.render_annotated(context) File "/usr/local/lib/python2.7/dist-packages/django/template/base.py" in render_annotated 959. return self.render(context) File "/usr/local/lib/python2.7/dist-packages/django/template/defaulttags.py" in render 220. nodelist.append(node.render_annotated(context)) File "/usr/local/lib/python2.7/dist-packages/django/template/base.py" in render_annotated 959. return self.render(context) File "/usr/local/lib/python2.7/dist-packages/django/template/loader_tags.py" in render 209. return template.render(context) File "/usr/local/lib/python2.7/dist-packages/django/template/base.py" in render 208. return self._render(context) File "/usr/local/lib/python2.7/dist-packages/django/template/base.py" in _render 197. return self.nodelist.render(context) File "/usr/local/lib/python2.7/dist-packages/django/template/base.py" in render 992. bit = node.render_annotated(context) File "/usr/local/lib/python2.7/dist-packages/django/template/base.py" in render_annotated 959. return self.render(context) File "/usr/local/lib/python2.7/dist-packages/django/template/defaulttags.py" in render 220. nodelist.append(node.render_annotated(context)) File "/usr/local/lib/python2.7/dist-packages/django/template/base.py" in render_annotated 959. return self.render(context) File "/usr/local/lib/python2.7/dist-packages/django/template/defaulttags.py" in render 220. nodelist.append(node.render_annotated(context)) File "/usr/local/lib/python2.7/dist-packages/django/template/base.py" in render_annotated 959. return self.render(context) File "/usr/local/lib/python2.7/dist-packages/django/template/defaulttags.py" in render 326. return nodelist.render(context) File "/usr/local/lib/python2.7/dist-packages/django/template/base.py" in render 992. bit = node.render_annotated(context) File "/usr/local/lib/python2.7/dist-packages/django/template/base.py" in render_annotated 959. return self.render(context) File "/usr/local/lib/python2.7/dist-packages/django/template/defaulttags.py" in render 326. return nodelist.render(context) File "/usr/local/lib/python2.7/dist-packages/django/template/base.py" in render 992. bit = node.render_annotated(context) File "/usr/local/lib/python2.7/dist-packages/django/template/base.py" in render_annotated 959. return self.render(context) File "/usr/local/lib/python2.7/dist-packages/django/template/base.py" in render 1049. return render_value_in_context(output, context) File "/usr/local/lib/python2.7/dist-packages/django/template/base.py" in render_value_in_context 1026. value = force_text(value) File "/usr/local/lib/python2.7/dist-packages/django/utils/encoding.py" in force_text 78. s = six.text_type(s) File "/usr/local/lib/python2.7/dist-packages/django/utils/html.py" in 381. klass.__unicode__ = lambda self: mark_safe(klass_unicode(self)) File "/usr/local/lib/python2.7/dist-packages/django/forms/boundfield.py" in __str__ 43. return self.as_widget() File "/usr/local/lib/python2.7/dist-packages/django/forms/boundfield.py" in as_widget 101. return force_text(widget.render(name, self.value(), attrs=attrs)) File "/usr/local/lib/python2.7/dist-packages/django/contrib/admin/widgets.py" in render 291. 'widget': self.widget.render(name, value, *args, **kwargs), File "/usr/local/lib/python2.7/dist-packages/django/forms/widgets.py" in render 528. options = self.render_options(choices, [value]) File "/usr/local/lib/python2.7/dist-packages/django/forms/widgets.py" in render_options 554. for option_value, option_label in chain(self.choices, choices): File "/usr/local/lib/python2.7/dist-packages/django/forms/models.py" in __iter__ 1110. yield self.choice(obj) File "/usr/local/lib/python2.7/dist-packages/django/forms/models.py" in choice 1117. return (self.field.prepare_value(obj), self.field.label_from_instance(obj)) File "/usr/local/lib/python2.7/dist-packages/django/forms/models.py" in label_from_instance 1180. return smart_text(obj) File "/usr/local/lib/python2.7/dist-packages/django/utils/encoding.py" in smart_text 42. return force_text(s, encoding, strings_only, errors) File "/usr/local/lib/python2.7/dist-packages/django/utils/encoding.py" in force_text 80. s = six.text_type(bytes(s), encoding, errors) Exception Type: UnicodeEncodeError at /admin/messaging/thread/2/change/ Exception Value: 'ascii' codec can't encode character u'\xc5' in position 35: ordinal not in range(128) 环境: 请求方法:获取 请求URL:http://localhost:8000/admin/messaging/thread/2/change/ Django版本:1.9.2 Python版本:2.7.10 已安装的应用程序: (“django.contrib.auth”, “django.contrib.contenttypes”, “django.contrib.sessions”, “django.contrib.sites”, “django.contrib.messages”, “django.contrib.admin”, “django.contrib.staticfiles”, “消息传递”, “脆皮形式”, “钱”, “django_国家”, “干草堆”, “皮索尔”, “django_表2”, '电话号码\字段', “django_扩展名”) 已安装的中间件: ('django.contrib.sessions.middleware.SessionMiddleware', 'django.middleware.common.CommonMiddleware', “django.middleware.csrf.CsrfViewMiddleware”, 'django.contrib.auth.middleware.AuthenticationMiddleware', 'django.contrib.auth.middleware.SessionAuthenticationMiddleware', 'django.contrib.messages.middleware.MessageMiddleware', 'django.middleware.clickjacking.xFrameOptions中间件', 'django.middleware.security.SecurityMiddleware') 模板错误: 在template/usr/local/lib/python2.7/dist-packages/django/contrib/admin/templates/admin/change_form.html中,第33行出现错误 ascii 23:{%endblock%} 24:{%endif%} 25 : 26:{%block content%} 27:{%block object tools%} 28:{%if-change%}{%if-not是_-popup%} 29 : 30:{%block object tools items%} 31:
  • 32:{%url选择| admin_urlname:'history'original.pk | admin_urlquote作为history_url%} 33:{%trans“History”%} 34:
  • 35:{%if有绝对url%}
  • {%trans“站点上的视图”}
  • {%endif%} 36:{%endblock%} 37 : 38:{%endif%}{%endif%} 39:{%endblock%} 40:{%csrf_令牌%}{%block form_top%}{%endblock%} 41 : 42:{%if是_popup%}{%endif%} 43:{%if to_field%}{%endif%} 回溯: get_响应中的文件“/usr/local/lib/python2.7/dist packages/django/core/handlers/base.py” 174响应=self.process\u exception\u by_ from __future__ import unicode_literals from django.db import models from auth.models import UserProfile, User from djmoney.models.fields import MoneyField from django.utils import timezone from django_countries.fields import CountryField import datetime class Category(models.Model): name = models.CharField(max_length=100, unique=True) def __str__(self): return self.name class Tour(models.Model): tour_name = models.CharField(max_length=100, default='') tour_desc = models.CharField('Tour Description', max_length=10000, default='') tour_guide = models.ForeignKey(UserProfile) tour_length = models.IntegerField('Tour length (days)', default = 3) country = CountryField(default='', max_length=100) city = models.CharField(max_length=1000, default='') ppl_min = models.IntegerField('Minimum no. of travellers', default=1) ppl_max = models.IntegerField('Maximum no. if travellers', default=10) price = MoneyField(max_digits=6,decimal_places=2, default_currency='USD', default=50) category = models.ForeignKey(Category) pub_date = models.DateField('date published', auto_now_add=True) active = models.BooleanField(default=True) deleted = models.BooleanField(default=False) def __str__(self): return "{0} by {1}".format(self.tour_name, self.tour_guide) def was_listed_recently(self): return self.pub_date >= timezone.now() - datetime.timedelta(days=7) Environment: Request Method: GET Request URL: http://localhost:8000/admin/messaging/thread/2/change/ Django Version: 1.9.2 Python Version: 2.7.10 Installed Applications: ('django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.sessions', 'django.contrib.sites', 'django.contrib.messages', 'django.contrib.admin', 'django.contrib.staticfiles', 'messaging', 'crispy_forms', 'djmoney', 'django_countries', 'haystack', 'pysolr', 'django_tables2', 'phonenumber_field', 'django_extensions') Installed Middleware: ('django.contrib.sessions.middleware.SessionMiddleware', 'django.middleware.common.CommonMiddleware', 'django.middleware.csrf.CsrfViewMiddleware', 'django.contrib.auth.middleware.AuthenticationMiddleware', 'django.contrib.auth.middleware.SessionAuthenticationMiddleware', 'django.contrib.messages.middleware.MessageMiddleware', 'django.middleware.clickjacking.XFrameOptionsMiddleware', 'django.middleware.security.SecurityMiddleware') Template error: In template /usr/local/lib/python2.7/dist-packages/django/contrib/admin/templates/admin/change_form.html, error at line 33 ascii 23 : {% endblock %} 24 : {% endif %} 25 : 26 : {% block content %} 27 : {% block object-tools %} 28 : {% if change %}{% if not is_popup %} 29 : 30 : {% block object-tools-items %} 31 :
  • 32 : {% url opts|admin_urlname:'history' original.pk|admin_urlquote as history_url %} 33 : {% trans "History" %} 34 :
  • 35 : {% if has_absolute_url %}
  • {% trans "View on site" %}
  • {% endif %} 36 : {% endblock %} 37 : 38 : {% endif %}{% endif %} 39 : {% endblock %} 40 : {% csrf_token %}{% block form_top %}{% endblock %} 41 : 42 : {% if is_popup %}{% endif %} 43 : {% if to_field %}{% endif %} Traceback: File "/usr/local/lib/python2.7/dist-packages/django/core/handlers/base.py" in get_response 174. response = self.process_exception_by_middleware(e, request) File "/usr/local/lib/python2.7/dist-packages/django/core/handlers/base.py" in get_response 172. response = response.render() File "/usr/local/lib/python2.7/dist-packages/django/template/response.py" in render 160. self.content = self.rendered_content File "/usr/local/lib/python2.7/dist-packages/django/template/response.py" in rendered_content 137. content = template.render(context, self._request) File "/usr/local/lib/python2.7/dist-packages/django/template/backends/django.py" in render 95. return self.template.render(context) File "/usr/local/lib/python2.7/dist-packages/django/template/base.py" in render 206. return self._render(context) File "/usr/local/lib/python2.7/dist-packages/django/template/base.py" in _render 197. return self.nodelist.render(context) File "/usr/local/lib/python2.7/dist-packages/django/template/base.py" in render 992. bit = node.render_annotated(context) File "/usr/local/lib/python2.7/dist-packages/django/template/base.py" in render_annotated 959. return self.render(context) File "/usr/local/lib/python2.7/dist-packages/django/template/loader_tags.py" in render 173. return compiled_parent._render(context) File "/usr/local/lib/python2.7/dist-packages/django/template/base.py" in _render 197. return self.nodelist.render(context) File "/usr/local/lib/python2.7/dist-packages/django/template/base.py" in render 992. bit = node.render_annotated(context) File "/usr/local/lib/python2.7/dist-packages/django/template/base.py" in render_annotated 959. return self.render(context) File "/usr/local/lib/python2.7/dist-packages/django/template/loader_tags.py" in render 173. return compiled_parent._render(context) File "/usr/local/lib/python2.7/dist-packages/django/template/base.py" in _render 197. return self.nodelist.render(context) File "/usr/local/lib/python2.7/dist-packages/django/template/base.py" in render 992. bit = node.render_annotated(context) File "/usr/local/lib/python2.7/dist-packages/django/template/base.py" in render_annotated 959. return self.render(context) File "/usr/local/lib/python2.7/dist-packages/django/template/loader_tags.py" in render 69. result = block.nodelist.render(context) File "/usr/local/lib/python2.7/dist-packages/django/template/base.py" in render 992. bit = node.render_annotated(context) File "/usr/local/lib/python2.7/dist-packages/django/template/base.py" in render_annotated 959. return self.render(context) File "/usr/local/lib/python2.7/dist-packages/django/template/loader_tags.py" in render 69. result = block.nodelist.render(context) File "/usr/local/lib/python2.7/dist-packages/django/template/base.py" in render 992. bit = node.render_annotated(context) File "/usr/local/lib/python2.7/dist-packages/django/template/base.py" in render_annotated 959. return self.render(context) File "/usr/local/lib/python2.7/dist-packages/django/template/defaulttags.py" in render 220. nodelist.append(node.render_annotated(context)) File "/usr/local/lib/python2.7/dist-packages/django/template/base.py" in render_annotated 959. return self.render(context) File "/usr/local/lib/python2.7/dist-packages/django/template/loader_tags.py" in render 209. return template.render(context) File "/usr/local/lib/python2.7/dist-packages/django/template/base.py" in render 208. return self._render(context) File "/usr/local/lib/python2.7/dist-packages/django/template/base.py" in _render 197. return self.nodelist.render(context) File "/usr/local/lib/python2.7/dist-packages/django/template/base.py" in render 992. bit = node.render_annotated(context) File "/usr/local/lib/python2.7/dist-packages/django/template/base.py" in render_annotated 959. return self.render(context) File "/usr/local/lib/python2.7/dist-packages/django/template/defaulttags.py" in render 220. nodelist.append(node.render_annotated(context)) File "/usr/local/lib/python2.7/dist-packages/django/template/base.py" in render_annotated 959. return self.render(context) File "/usr/local/lib/python2.7/dist-packages/django/template/defaulttags.py" in render 220. nodelist.append(node.render_annotated(context)) File "/usr/local/lib/python2.7/dist-packages/django/template/base.py" in render_annotated 959. return self.render(context) File "/usr/local/lib/python2.7/dist-packages/django/template/defaulttags.py" in render 326. return nodelist.render(context) File "/usr/local/lib/python2.7/dist-packages/django/template/base.py" in render 992. bit = node.render_annotated(context) File "/usr/local/lib/python2.7/dist-packages/django/template/base.py" in render_annotated 959. return self.render(context) File "/usr/local/lib/python2.7/dist-packages/django/template/defaulttags.py" in render 326. return nodelist.render(context) File "/usr/local/lib/python2.7/dist-packages/django/template/base.py" in render 992. bit = node.render_annotated(context) File "/usr/local/lib/python2.7/dist-packages/django/template/base.py" in render_annotated 959. return self.render(context) File "/usr/local/lib/python2.7/dist-packages/django/template/base.py" in render 1049. return render_value_in_context(output, context) File "/usr/local/lib/python2.7/dist-packages/django/template/base.py" in render_value_in_context 1026. value = force_text(value) File "/usr/local/lib/python2.7/dist-packages/django/utils/encoding.py" in force_text 78. s = six.text_type(s) File "/usr/local/lib/python2.7/dist-packages/django/utils/html.py" in 381. klass.__unicode__ = lambda self: mark_safe(klass_unicode(self)) File "/usr/local/lib/python2.7/dist-packages/django/forms/boundfield.py" in __str__ 43. return self.as_widget() File "/usr/local/lib/python2.7/dist-packages/django/forms/boundfield.py" in as_widget 101. return force_text(widget.render(name, self.value(), attrs=attrs)) File "/usr/local/lib/python2.7/dist-packages/django/contrib/admin/widgets.py" in render 291. 'widget': self.widget.render(name, value, *args, **kwargs), File "/usr/local/lib/python2.7/dist-packages/django/forms/widgets.py" in render 528. options = self.render_options(choices, [value]) File "/usr/local/lib/python2.7/dist-packages/django/forms/widgets.py" in render_options 554. for option_value, option_label in chain(self.choices, choices): File "/usr/local/lib/python2.7/dist-packages/django/forms/models.py" in __iter__ 1110. yield self.choice(obj) File "/usr/local/lib/python2.7/dist-packages/django/forms/models.py" in choice 1117. return (self.field.prepare_value(obj), self.field.label_from_instance(obj)) File "/usr/local/lib/python2.7/dist-packages/django/forms/models.py" in label_from_instance 1180. return smart_text(obj) File "/usr/local/lib/python2.7/dist-packages/django/utils/encoding.py" in smart_text 42. return force_text(s, encoding, strings_only, errors) File "/usr/local/lib/python2.7/dist-packages/django/utils/encoding.py" in force_text 80. s = six.text_type(bytes(s), encoding, errors) Exception Type: UnicodeEncodeError at /admin/messaging/thread/2/change/ Exception Value: 'ascii' codec can't encode character u'\xc5' in position 35: ordinal not in range(128)
    @python_2_unicode_compatible
    class Thread(models.Model):
         ...
    
    class Tour(models.Model):
        ...
        def __str__(self):
            return "{0} by {1}".format(self.tour_name.encode('utf8'), self.tour_guide)
    
    def __str__(self):
        return u"{0} by {1}".format(self.tour_name, self.tour_guide)