Django manage.py 问题

2 投票
3 回答
855 浏览
提问于 2025-04-17 00:17

为什么我需要运行 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

撰写回答