Django manage.py 问题
为什么我需要运行 python manage.py somecommand
,而其他人只需要运行 manage.py somecommand
?我用的是OSX 10.6。这是因为有一种预设的方法可以让 .py
文件自动作为Python脚本运行,而我不小心禁用了这个功能,还是说这是需要我自己去开启的?
3 个回答
1
你需要关注两件事:
首先,看看 manage.py 这个脚本是否设置为可执行。如果没有的话,可以试试下面的命令:
chmod u+x manage.py
其次,检查一下 manage.py 文件里是否有一个有效的 哈希bang 行。如果没有,你可以尝试添加一行,指向你系统中正确的 Python 解释器。
1
在Mac上,要直接运行manage.py命令,它必须是可执行的,也就是说你需要给它一些权限。你可以通过以下方式来实现:
chmod 755 manage.py
如果你在manage.py文件所在的文件夹里,运行它的方法是输入:
./manage.py somecommand
如果不在同一个文件夹里,你需要指定它的路径:
/path/to/my/project/manage.py somecommand
6
如果你在使用较新版本的Django,manage.py文件默认应该是一个“可执行”的文件。
需要注意的是,你不能直接在终端输入 manage.py somecommand
,因为manage.py不在系统的路径中。你需要在前面加上 ./ 来从当前目录运行它,也就是说要输入 ./manage.py somecommand
。
如果这样还是不行,请确保manage.py文件的第一行是:#!/usr/bin/env python
。同时,确保它是可执行的:chmod +x manage.py