Django升级1.9.6出现的中文本地化bug
Error日志:
- Error opening file for reading: Permission denied
- ERROR Internal Server Error: /
- Traceback (most recent call last):
- File "/usr/local/lib/python2.7/dist-packages/django/core/handlers/base.py", line 174, in get_response
- response = self.process_exception_by_middleware(e, request)
- File "/usr/local/lib/python2.7/dist-packages/django/core/handlers/base.py", line 172, in get_response
- response = response.render()
- File "/usr/local/lib/python2.7/dist-packages/django/template/response.py", line 160, in render
- self.content = self.rendered_content
- File "/usr/local/lib/python2.7/dist-packages/django/template/response.py", line 137, in rendered_content
- content = template.render(context, self._request)
- File "/usr/local/lib/python2.7/dist-packages/django/template/backends/django.py", line 95, in render
- return self.template.render(context)
- File "/usr/local/lib/python2.7/dist-packages/django/template/base.py", line 206, in render
- return self._render(context)
- File "/usr/local/lib/python2.7/dist-packages/django/template/base.py", line 197, in _render
- return self.nodelist.render(context)
- File "/usr/local/lib/python2.7/dist-packages/django/template/base.py", line 992, in render
- bit = node.render_annotated(context)
- File "/usr/local/lib/python2.7/dist-packages/django/template/base.py", line 959, in render_annotated
- return self.render(context)
- File "/usr/local/lib/python2.7/dist-packages/django/template/loader_tags.py", line 173, in render
- return compiled_parent._render(context)
- File "/usr/local/lib/python2.7/dist-packages/django/template/base.py", line 197, in _render
- return self.nodelist.render(context)
- File "/usr/local/lib/python2.7/dist-packages/django/template/base.py", line 992, in render
- bit = node.render_annotated(context)
- File "/usr/local/lib/python2.7/dist-packages/django/template/base.py", line 959, in render_annotated
- return self.render(context)
- File "/usr/local/lib/python2.7/dist-packages/django/template/loader_tags.py", line 69, in render
- result = block.nodelist.render(context)
- File "/usr/local/lib/python2.7/dist-packages/django/template/base.py", line 992, in render
- bit = node.render_annotated(context)
- File "/usr/local/lib/python2.7/dist-packages/django/template/base.py", line 959, in render_annotated
- return self.render(context)
- File "/usr/local/lib/python2.7/dist-packages/django/template/library.py", line 243, in render
- return t.render(new_context)
- File "/usr/local/lib/python2.7/dist-packages/django/template/base.py", line 208, in render
- return self._render(context)
- File "/usr/local/lib/python2.7/dist-packages/django/template/base.py", line 197, in _render
- return self.nodelist.render(context)
- File "/usr/local/lib/python2.7/dist-packages/django/template/base.py", line 992, in render
- bit = node.render_annotated(context)
- File "/usr/local/lib/python2.7/dist-packages/django/template/base.py", line 959, in render_annotated
- return self.render(context)
- File "/usr/local/lib/python2.7/dist-packages/django/template/defaulttags.py", line 220, in render
- nodelist.append(node.render_annotated(context))
- File "/usr/local/lib/python2.7/dist-packages/django/template/base.py", line 959, in render_annotated
- return self.render(context)
- File "/usr/local/lib/python2.7/dist-packages/django/template/base.py", line 1043, in render
- output = self.filter_expression.resolve(context)
- File "/usr/local/lib/python2.7/dist-packages/django/template/base.py", line 736, in resolve
- new_obj = func(obj, *arg_vals)
- File "/usr/local/lib/python2.7/dist-packages/django/template/defaultfilters.py", line 51, in _dec
- return func(*args, **kwargs)
- File "/usr/local/lib/python2.7/dist-packages/django/template/defaultfilters.py", line 278, in truncatechars
- return Truncator(value).chars(length)
- File "/usr/local/lib/python2.7/dist-packages/django/utils/functional.py", line 194, in wrapper
- return func(*args, **kwargs)
- File "/usr/local/lib/python2.7/dist-packages/django/utils/text.py", line 103, in chars
- for char in self.add_truncation_text('', truncate):
- File "/usr/local/lib/python2.7/dist-packages/django/utils/text.py", line 77, in add_truncation_text
- '%(truncated_text)s...')
- File "/usr/local/lib/python2.7/dist-packages/django/utils/translation/__init__.py", line 93, in pgettext
- return _trans.pgettext(context, message)
- File "/usr/local/lib/python2.7/dist-packages/django/utils/translation/trans_real.py", line 326, in pgettext
- result = ugettext(msg_with_ctxt)
- File "/usr/local/lib/python2.7/dist-packages/django/utils/translation/trans_real.py", line 321, in ugettext
- return do_translate(message, 'ugettext')
- File "/usr/local/lib/python2.7/dist-packages/django/utils/translation/trans_real.py", line 298, in do_translate
- _default = _default or translation(settings.LANGUAGE_CODE)
- File "/usr/local/lib/python2.7/dist-packages/django/utils/translation/trans_real.py", line 205, in translation
- _translations[language] = DjangoTranslation(language)
- File "/usr/local/lib/python2.7/dist-packages/django/utils/translation/trans_real.py", line 118, in __init__
- raise IOError("No translation files found for default language %s." % settings.LANGUAGE_CODE)
- IOError: No translation files found for default language zh-CN.
- Traceback (most recent call last):
- File "/usr/local/lib/python2.7/dist-packages/django/core/handlers/wsgi.py", line 177, in __call__
- response = self.get_response(request)
- File "/usr/local/lib/python2.7/dist-packages/django/core/handlers/base.py", line 230, in get_response
- response = self.handle_uncaught_exception(request, resolver, sys.exc_info())
- File "/usr/local/lib/python2.7/dist-packages/django/core/handlers/base.py", line 284, in handle_uncaught_exception
- 'request': request
- File "/usr/lib/python2.7/logging/__init__.py", line 1166, in error
- self._log(ERROR, msg, args, **kwargs)
- File "/usr/lib/python2.7/logging/__init__.py", line 1258, in _log
- self.handle(record)
- File "/usr/lib/python2.7/logging/__init__.py", line 1268, in handle
- self.callHandlers(record)
- File "/usr/lib/python2.7/logging/__init__.py", line 1308, in callHandlers
- hdlr.handle(record)
- File "/usr/lib/python2.7/logging/__init__.py", line 748, in handle
- self.emit(record)
- File "/usr/local/lib/python2.7/dist-packages/django/utils/log.py", line 115, in emit
- message = "%s\n\n%s" % (self.format(no_exc_record), reporter.get_traceback_text())
- File "/usr/local/lib/python2.7/dist-packages/django/views/debug.py", line 323, in get_traceback_text
- return t.render(c)
- File "/usr/local/lib/python2.7/dist-packages/django/template/base.py", line 206, in render
- return self._render(context)
- File "/usr/local/lib/python2.7/dist-packages/django/template/base.py", line 197, in _render
- return self.nodelist.render(context)
- File "/usr/local/lib/python2.7/dist-packages/django/template/base.py", line 992, in render
- bit = node.render_annotated(context)
- File "/usr/local/lib/python2.7/dist-packages/django/template/base.py", line 959, in render_annotated
- return self.render(context)
- File "/usr/local/lib/python2.7/dist-packages/django/template/base.py", line 1043, in render
- output = self.filter_expression.resolve(context)
- File "/usr/local/lib/python2.7/dist-packages/django/template/base.py", line 736, in resolve
- new_obj = func(obj, *arg_vals)
- File "/usr/local/lib/python2.7/dist-packages/django/template/defaultfilters.py", line 778, in date
- return formats.date_format(value, arg)
- File "/usr/local/lib/python2.7/dist-packages/django/utils/formats.py", line 151, in date_format
- return dateformat.format(value, get_format(format or 'DATE_FORMAT', use_l10n=use_l10n))
- File "/usr/local/lib/python2.7/dist-packages/django/utils/dateformat.py", line 367, in format
- return df.format(format_string)
- File "/usr/local/lib/python2.7/dist-packages/django/utils/dateformat.py", line 37, in format
- pieces.append(force_text(getattr(self, piece)()))
- File "/usr/local/lib/python2.7/dist-packages/django/utils/dateformat.py", line 292, in r
- return self.format('D, j M Y H:i:s O')
- File "/usr/local/lib/python2.7/dist-packages/django/utils/dateformat.py", line 37, in format
- pieces.append(force_text(getattr(self, piece)()))
- File "/usr/local/lib/python2.7/dist-packages/django/utils/encoding.py", line 78, in force_text
- s = six.text_type(s)
- File "/usr/local/lib/python2.7/dist-packages/django/utils/functional.py", line 114, in __text_cast
- return func(*self.__args, **self.__kw)
- File "/usr/local/lib/python2.7/dist-packages/django/utils/translation/__init__.py", line 85, in ugettext
- return _trans.ugettext(message)
- File "/usr/local/lib/python2.7/dist-packages/django/utils/translation/trans_real.py", line 321, in ugettext
- return do_translate(message, 'ugettext')
- File "/usr/local/lib/python2.7/dist-packages/django/utils/translation/trans_real.py", line 298, in do_translate
- _default = _default or translation(settings.LANGUAGE_CODE)
- File "/usr/local/lib/python2.7/dist-packages/django/utils/translation/trans_real.py", line 205, in translation
- _translations[language] = DjangoTranslation(language)
- File "/usr/local/lib/python2.7/dist-packages/django/utils/translation/trans_real.py", line 118, in __init__
- raise IOError("No translation files found for default language %s." % settings.LANGUAGE_CODE)
- IOError: No translation files found for default language zh-CN.
- [pid: 3318|app: 0|req: 1/1] 219.237.242.144 () {44 vars in 5238 bytes} [Fri May 6 10:19:53 2016] GET / => generated 0 bytes in 243 msecs (HTTP/1.1 500) 0 headers in 0 bytes (0 switches on core 0)
- Error opening file for reading: Permission denied
- [pid: 3321|app: 0|req: 1/2] 68.180.229.29 () {32 vars in 469 bytes} [Fri May 6 10:21:04 2016] GET /ge/qqt-a653480/ => generated 19272 bytes in 272 msecs (HTTP/1.1 200) 3 headers in 195 bytes (1 switches on core 0)
- Error opening file for reading: Permission denied
- ERROR Internal Server Error: /
- Traceback (most recent call last):
- File "/usr/local/lib/python2.7/dist-packages/django/core/handlers/base.py", line 174, in get_response
- response = self.process_exception_by_middleware(e, request)
- File "/usr/local/lib/python2.7/dist-packages/django/core/handlers/base.py", line 172, in get_response
- response = response.render()
- File "/usr/local/lib/python2.7/dist-packages/django/template/response.py", line 160, in render
- self.content = self.rendered_content
- File "/usr/local/lib/python2.7/dist-packages/django/template/response.py", line 137, in rendered_content
- content = template.render(context, self._request)
- File "/usr/local/lib/python2.7/dist-packages/django/template/backends/django.py", line 95, in render
- return self.template.render(context)
- File "/usr/local/lib/python2.7/dist-packages/django/template/base.py", line 206, in render
- return self._render(context)
- File "/usr/local/lib/python2.7/dist-packages/django/template/base.py", line 197, in _render
- return self.nodelist.render(context)
- File "/usr/local/lib/python2.7/dist-packages/django/template/base.py", line 992, in render
- bit = node.render_annotated(context)
- File "/usr/local/lib/python2.7/dist-packages/django/template/base.py", line 959, in render_annotated
- return self.render(context)
- File "/usr/local/lib/python2.7/dist-packages/django/template/loader_tags.py", line 173, in render
- return compiled_parent._render(context)
- File "/usr/local/lib/python2.7/dist-packages/django/template/base.py", line 197, in _render
- return self.nodelist.render(context)
- File "/usr/local/lib/python2.7/dist-packages/django/template/base.py", line 992, in render
- bit = node.render_annotated(context)
- File "/usr/local/lib/python2.7/dist-packages/django/template/base.py", line 959, in render_annotated
- return self.render(context)
- File "/usr/local/lib/python2.7/dist-packages/django/template/loader_tags.py", line 69, in render
- result = block.nodelist.render(context)
- File "/usr/local/lib/python2.7/dist-packages/django/template/base.py", line 992, in render
- bit = node.render_annotated(context)
- File "/usr/local/lib/python2.7/dist-packages/django/template/base.py", line 959, in render_annotated
- return self.render(context)
- File "/usr/local/lib/python2.7/dist-packages/django/template/library.py", line 243, in render
- return t.render(new_context)
- File "/usr/local/lib/python2.7/dist-packages/django/template/base.py", line 208, in render
- return self._render(context)
- File "/usr/local/lib/python2.7/dist-packages/django/template/base.py", line 197, in _render
- return self.nodelist.render(context)
- File "/usr/local/lib/python2.7/dist-packages/django/template/base.py", line 992, in render
- bit = node.render_annotated(context)
- File "/usr/local/lib/python2.7/dist-packages/django/template/base.py", line 959, in render_annotated
- return self.render(context)
- File "/usr/local/lib/python2.7/dist-packages/django/template/defaulttags.py", line 220, in render
- nodelist.append(node.render_annotated(context))
- File "/usr/local/lib/python2.7/dist-packages/django/template/base.py", line 959, in render_annotated
- return self.render(context)
- File "/usr/local/lib/python2.7/dist-packages/django/template/base.py", line 1043, in render
- output = self.filter_expression.resolve(context)
- File "/usr/local/lib/python2.7/dist-packages/django/template/base.py", line 736, in resolve
- new_obj = func(obj, *arg_vals)
- File "/usr/local/lib/python2.7/dist-packages/django/template/defaultfilters.py", line 51, in _dec
- return func(*args, **kwargs)
- File "/usr/local/lib/python2.7/dist-packages/django/template/defaultfilters.py", line 278, in truncatechars
- return Truncator(value).chars(length)
- File "/usr/local/lib/python2.7/dist-packages/django/utils/functional.py", line 194, in wrapper
- return func(*args, **kwargs)
- File "/usr/local/lib/python2.7/dist-packages/django/utils/text.py", line 103, in chars
- for char in self.add_truncation_text('', truncate):
- File "/usr/local/lib/python2.7/dist-packages/django/utils/text.py", line 77, in add_truncation_text
- '%(truncated_text)s...')
- File "/usr/local/lib/python2.7/dist-packages/django/utils/translation/__init__.py", line 93, in pgettext
- return _trans.pgettext(context, message)
- File "/usr/local/lib/python2.7/dist-packages/django/utils/translation/trans_real.py", line 326, in pgettext
- result = ugettext(msg_with_ctxt)
- File "/usr/local/lib/python2.7/dist-packages/django/utils/translation/trans_real.py", line 321, in ugettext
- return do_translate(message, 'ugettext')
- File "/usr/local/lib/python2.7/dist-packages/django/utils/translation/trans_real.py", line 298, in do_translate
- _default = _default or translation(settings.LANGUAGE_CODE)
- File "/usr/local/lib/python2.7/dist-packages/django/utils/translation/trans_real.py", line 205, in translation
- _translations[language] = DjangoTranslation(language)
- File "/usr/local/lib/python2.7/dist-packages/django/utils/translation/trans_real.py", line 118, in __init__
- raise IOError("No translation files found for default language %s." % settings.LANGUAGE_CODE)
- IOError: No translation files found for default language zh-CN.
- Traceback (most recent call last):
- File "/usr/local/lib/python2.7/dist-packages/django/core/handlers/wsgi.py", line 177, in __call__
- response = self.get_response(request)
- File "/usr/local/lib/python2.7/dist-packages/django/core/handlers/base.py", line 230, in get_response
- response = self.handle_uncaught_exception(request, resolver, sys.exc_info())
- File "/usr/local/lib/python2.7/dist-packages/django/core/handlers/base.py", line 284, in handle_uncaught_exception
- 'request': request
- File "/usr/lib/python2.7/logging/__init__.py", line 1166, in error
- self._log(ERROR, msg, args, **kwargs)
- File "/usr/lib/python2.7/logging/__init__.py", line 1258, in _log
- self.handle(record)
- File "/usr/lib/python2.7/logging/__init__.py", line 1268, in handle
- self.callHandlers(record)
- File "/usr/lib/python2.7/logging/__init__.py", line 1308, in callHandlers
- hdlr.handle(record)
- File "/usr/lib/python2.7/logging/__init__.py", line 748, in handle
- self.emit(record)
- File "/usr/local/lib/python2.7/dist-packages/django/utils/log.py", line 115, in emit
- message = "%s\n\n%s" % (self.format(no_exc_record), reporter.get_traceback_text())
- File "/usr/local/lib/python2.7/dist-packages/django/views/debug.py", line 323, in get_traceback_text
- return t.render(c)
- File "/usr/local/lib/python2.7/dist-packages/django/template/base.py", line 206, in render
- return self._render(context)
- File "/usr/local/lib/python2.7/dist-packages/django/template/base.py", line 197, in _render
- return self.nodelist.render(context)
- File "/usr/local/lib/python2.7/dist-packages/django/template/base.py", line 992, in render
- bit = node.render_annotated(context)
- File "/usr/local/lib/python2.7/dist-packages/django/template/base.py", line 959, in render_annotated
- return self.render(context)
- File "/usr/local/lib/python2.7/dist-packages/django/template/base.py", line 1043, in render
- output = self.filter_expression.resolve(context)
- File "/usr/local/lib/python2.7/dist-packages/django/template/base.py", line 736, in resolve
- new_obj = func(obj, *arg_vals)
- File "/usr/local/lib/python2.7/dist-packages/django/template/defaultfilters.py", line 778, in date
- return formats.date_format(value, arg)
- File "/usr/local/lib/python2.7/dist-packages/django/utils/formats.py", line 151, in date_format
- return dateformat.format(value, get_format(format or 'DATE_FORMAT', use_l10n=use_l10n))
- File "/usr/local/lib/python2.7/dist-packages/django/utils/dateformat.py", line 367, in format
- return df.format(format_string)
- File "/usr/local/lib/python2.7/dist-packages/django/utils/dateformat.py", line 37, in format
- pieces.append(force_text(getattr(self, piece)()))
- File "/usr/local/lib/python2.7/dist-packages/django/utils/dateformat.py", line 292, in r
- return self.format('D, j M Y H:i:s O')
- File "/usr/local/lib/python2.7/dist-packages/django/utils/dateformat.py", line 37, in format
- pieces.append(force_text(getattr(self, piece)()))
- File "/usr/local/lib/python2.7/dist-packages/django/utils/encoding.py", line 78, in force_text
- s = six.text_type(s)
- File "/usr/local/lib/python2.7/dist-packages/django/utils/functional.py", line 114, in __text_cast
- return func(*self.__args, **self.__kw)
- File "/usr/local/lib/python2.7/dist-packages/django/utils/translation/__init__.py", line 85, in ugettext
- return _trans.ugettext(message)
- File "/usr/local/lib/python2.7/dist-packages/django/utils/translation/trans_real.py", line 321, in ugettext
- return do_translate(message, 'ugettext')
- File "/usr/local/lib/python2.7/dist-packages/django/utils/translation/trans_real.py", line 298, in do_translate
- _default = _default or translation(settings.LANGUAGE_CODE)
- File "/usr/local/lib/python2.7/dist-packages/django/utils/translation/trans_real.py", line 205, in translation
- _translations[language] = DjangoTranslation(language)
- File "/usr/local/lib/python2.7/dist-packages/django/utils/translation/trans_real.py", line 118, in __init__
- raise IOError("No translation files found for default language %s." % settings.LANGUAGE_CODE)
- IOError: No translation files found for default language zh-CN.
经确认是新版本的django包版本中只有zh_Hans目录,没有zh_CN,把zh_Hans目录复制一个zh_CN就Ok了
一楼评论的方法也不错,在settings里面直接改成zh-Hans,这样就不用升级完Django,还去改目录了。
Django升级1.9.6出现的中文本地化bug的更多相关文章
- django升级2.1python升级3.7时出现的错误:"trying to load '%s': %s" % (entry[1], e) django.template.library.InvalidTemplateLibrary:
django升级2.1python升级3.7时出现如下的错误: "trying to load '%s': %s" % (entry[1], e) django.template. ...
- Ubuntu中文本地化后字体改变
ubuntu中文本地化后会安装2个字体 fonts-arphic-ukai fonts-arphic-uming 找到这两个字体删除之.. sudo apt- get remove fonts-arp ...
- Laravel 验证中文本地化
1.使用bootsrap好看的提示样式 但是会提示英文 2.将提示中文本地化 2.1.在/resouce/lang下创建文件夹:zh 2.2.已经有小伙伴做好了翻译 https://gist.gith ...
- WSL中文本地化
WSL中文本地化 Windows Subsystem for Linux(简称WSL)是一个在Windows 10上能够运行原生Linux二进制可执行文件(ELF格式)的兼容层.它是由微软与Canon ...
- Django升级1.6之后出现“Bad Request (400)”错误的解决方案
Django从1.4升级到1.6之后发现之前的网站都无法访问了,会出现“Bad Request (400)”的错误,搜了半天终于找到了解决办法. 解决方法很简单: 在settings.py里面添加: ...
- 关于Django升级的一些联想
刚刚阅读完django1.11的release note,从django1.4一直用到django1.11,以及即将到来的大版本django2.0,Django的版本升级策略和国内的技术现状对比称得上 ...
- Django升级1.8的一些问题
1.最明显的问题当然是Settings设置中关于模板的设置数据结构发生变化,这个就不细说了,你开个Django的1.8的新项目就知道怎么改了 2.migrations问题,这个问题是1.8最主要的修改 ...
- Django学习手册 - admin后台 切换成中文显示/添加数据表
Django admin后台管理 切换成中文界面: 站点显示为中文: 在setting 里面修改 LANGUAGE_CORE = 'zh-Hans' 字段名显示中文 class Test(models ...
- django 使用HttpResponse返回json数据为中文
之前我用django一般用JsonResponse来返回json数据格式 但是发现返回中文的时候会乱码 from django.http import JsonResponse def test(re ...
随机推荐
- android 标准OTA升级流程
标准的OTA升级流程包括一下几个步骤: 1.Android设备首先会与OTA服务器进行交互,如果有更新会推送给客户.推送的信息常常会包含OTA更新包的下载地址和一些版本信息. 2.Update程序会将 ...
- Web Service进阶(一)运行原理
利用清明小假期,温习了一遍Web Service的相关内容,对其工作原理进行了简要总结.以供有需求的朋友和自己日后参考.文章若有不当之处,敬请朋友们提出宝贵建议,以求共勉. Web服务中,我们应该首先 ...
- Android进阶(七)数据存储
Android 数据存储 1访问资源文件 直接将文件保存在设备的内部存储. 默认情况下,保存到内部存储的文件为私有的,其他应用程序不能访问它们,当用户卸载应用程序时,所保存的文件也一并删除. 1.1 ...
- 使用UE4/Unity创建VR项目
一.主要的步骤是说一下使用UE4,在此之前先说一下使用unity创建的VR项目 1.unity创建oculus rift dk2项目 在unity中创建一个简单的场景,让摄像机能看见场景中的物体,不对 ...
- Java学习从菜鸟变大鸟之二 输入输出流(IO)
在软件开发中,数据流和数据库操作占据了一个很重要的位置,所以,熟悉操作数据流和数据库,对于每一个开发者来说都是很重要的,今天就来总结一下JavaI/O. 流 流是一个很形象的概念,当程序需要读取数据的 ...
- Eclipse快捷键指南
Eclipse快捷键指南 Eclipse快捷键,熟悉快捷键可以帮助开发事半功倍,节省更多的时间来用于做有意义的事情.Ctrl+1 快速修复(最经典的快捷键,就不用多说了)Ctrl+D: 删除当前行Ct ...
- H5学习之旅-H5的格式化(4)
H5的格式设置: b代表是粗体 i斜体 big 字体变大 small变小 em强调 strong 加强和变粗差不多 sub 定义下标字 sup 定义上标字 ins 插入字 del 删除字 代码实例 & ...
- 手把手带你画一个漂亮蜂窝view Android自定义view
上一篇做了一个水波纹view 不知道大家有没有动手试试呢点击打开链接 这个效果做起来好像没什么意义,如果不加监听回调 图片就能直接替代.写这篇博客的目的是锻炼一下思维能力,以更好的面多各种自定义vi ...
- 一个 developer 的进化
作为一名开发者已十年,回顾过往大概经历了这么几个阶段,如下图所示: Develop Code 作为刚走出学校的学生进入公司,在最初的 1-2 年内就处于该阶段. 不停的开发代码,为系统的大厦添砖加瓦, ...
- gtk+程序在关闭主窗口时的事件流
当鼠标单击gtk+窗口的关闭按钮时,程序首先接收到delete_event,当该事件处理函数返回TRUE表示事件已处理禁止进一步传播,从而取消关闭操作:当返回FALSE时,事件消息进一步向上传播,此时 ...