【问题标题】:Garbled output on Django development server with Jython使用 Jython 在 Django 开发服务器上输出乱码
【发布时间】:2011-07-12 08:53:38
【问题描述】:

我在 Windows 7 上的 Jython (2.5.2) 上运行 Django (1.2.5)(在 XP 上也尝试过,结果相同)。我遇到的问题是 Django 开发服务器。服务器的输出在每行的前几个字符中都是乱码。

jython manage.py 运行服务器
验证模型...
发现 0 个错误

Django 版本 1.2.5,使用设置“Polls.settings”
开发服务器正在运行 http://127.0.0.1:8000/
使用 CONTROL-C 退出服务器。
←[35;1m[09/Mar/2011 16:33:09] "GET / HTTP/1.1" 500 64949
←[0m←[32m[09/Mar/2011 16:33:16] "GET /admin HTTP/1.1" 301 0
←[0m←[m[09/Mar/2011 16:33:17] "GET /admin/ HTTP/1.1" 200 1882
←[0米

问题是我实际上无法使用 Ctrl-C(或 Ctrl-Z 等)停止服务器。如果我尝试 Ctrl-Break,我会得到看起来很长的堆栈跟踪,但服务器仍在运行。阻止它的唯一方法是完全关闭终端窗口。

这只发生在在 Jython 上运行 Django 时。在 CPython 上,没问题。

这也会在输入数据时出现问题,例如设置管理员超级用户等。数据已损坏并且输入不正确。所以这似乎是一个字符编码问题。我用谷歌搜索了所有地方,但无法找到答案。我做错了什么,或者我需要做什么?谢谢。

【问题讨论】:

  • 那其实不是乱码,那是没有透传的格式化代码。
  • 我明白了。我能做些什么来解决这个问题?

标签: django encoding jython


【解决方案1】:

DJANGO_COLORS 环境变量设置为 nocolor 以禁用 Django 对输出着色的尝试。

然后在 Django 错误跟踪器中记录一个错误。

【讨论】:

  • 好的,修复了输出格式代码 - 谢谢。不幸的是,我仍然无法停止服务器(不关闭终端窗口),或者输入超级用户管理员密码(它只是永远停留在“密码:”提示符下,即使我按下 。我会归档直接使用 Django 的一个错误,除非有办法解决这个问题.....
  • 人力资源部。不,这听起来像是直接与 Django 和 Jython 的交互问题。
最近更新 更多