错误调试¶
本页包含了开发Django应用过程中一些常见错误和问题的处理建议。
运行 django-admin
时遇到的问题¶
“未找到 django-admin 命令”¶
django-admin should be on your system path if you
installed Django via pip
. If it's not on your path, you can find it in
site-packages/django/bin
, where site-packages
is a directory within
your Python installation. Consider symlinking to django-admin from some place on your path, such as
/usr/local/bin
.
如果 django-admin
报错但是``django-admin.py``却可以,那说明可能你使用的Django版本和本文档的版本不一致。``django-admin``是 Django 1.7中的新命令。
macOS 的权限问题¶
如果你正在使用 macOS,你可能看到“permission denied”提示,当你尝试运行``django-admin``的时候。这是因为在像 macOS 这种类Unix系统中,一个文件在它被当作程序执行之前必须被标记为“可执行”。为了解决这个问题,打开终端并且进入 django-admin `的安装目录(使用``cd``命令),然后执行命令``sudo chmod +x django-admin`.
杂项¶
我遇到了错误信息 UnicodeDecodeError
。 我哪里做错了?¶
当包含非ASCII序列的字符串被转换为Unicode字符串,并且指定的编码不正确时,会发生此类错误。 输出一般看起来像这样:
UnicodeDecodeError: 'ascii' codec can't decode byte 0x?? in position ?:
ordinal not in range(128)
解决方案主要取决于上下文,但是这里有两个常见的陷阱产生这个错误:
- 您的系统语言环境可能是默认的ASCII,比如类UNIX系统上的 “C” (可通过命令
locale
进行检查)。如果是这种情况,请参考您的系统文档以了解如何将其更改为UTF-8语言环境。
关联资源:
- :文档:Django 中的 Unicode</ref/unicode>
- https://wiki.python.org/moin/UnicodeDecodeError