【发布时间】:2011-08-24 20:56:54
【问题描述】:
为什么我必须运行python manage.py somecommand 而其他人只需运行manage.py somecommand?我在 OSX 10.6 上。这是因为有一种预设方式可以让.py 文件自动作为 Python 脚本运行,而我以某种方式禁用了该功能,还是您明确启用了该功能?
【问题讨论】:
标签: python django command-line
为什么我必须运行python manage.py somecommand 而其他人只需运行manage.py somecommand?我在 OSX 10.6 上。这是因为有一种预设方式可以让.py 文件自动作为 Python 脚本运行,而我以某种方式禁用了该功能,还是您明确启用了该功能?
【问题讨论】:
标签: python django command-line
如果您使用的是最新版本的 Django,则 manage.py 文件默认应该是“可执行”文件。
请注意,您不能只在终端中输入 manage.py somecommand,因为 manage.py 不在 PATH 中,您必须先输入 ./ 才能从当前目录运行它,即 ./manage.py somecommand。
如果这不起作用,请确保 manage.py 文件具有:
#!/usr/bin/env python
作为它的第一行。并确保它是可执行的:chmod +x manage.py
【讨论】:
你应该看看两件事:
首先,manage.py 脚本是否设置为可执行?如果没有,请尝试
chmod u+x manage.py
其次,manage.py 是否有有效的hashbang 行?如果没有,您可以尝试为您的系统添加一个指向正确的 Python 解释器。
【讨论】:
在 mac 上,manage.py 命令必须是可执行的,才能在没有 python 命令的情况下运行它。你可以这样做:
chmod 755 manage.py
如果您与 manage.py 位于同一目录中,请输入以下命令来运行它:
./manage.py somecommand
否则要指定路径:
/path/to/my/project/manage.py somecommand
【讨论】: