django-admin.py 仅打印帮助信息
我正在使用django 1.3.1
我按照网上的教程,试着用“django-admin.py startproject mysite”来创建一个项目。
但是我总是收到这个信息:
D:\Code\djtest>django-admin.py startproject mysite
Usage: django-admin.py subcommand [options] [args]
Options:
-v VERBOSITY, --verbosity=VERBOSITY
(...)
这是怎么回事呢?
6 个回答
1
在注册表编辑器中,找到
HKEY_CURRENT_USER\Software\Classes\Applications\python.exe\shell\open\command
把这里的内容从
"<your drive>:\Python<version>\python.exe" "%1"
改成
"<your drive>:\Python<version>\python.exe" "%1" %*
我也遇到过同样的问题,最后是这样解决的。
3
如果你使用的是Windows 7,记得去更新注册表中的一个设置,位置在:
HKEY_CLASSES_ROOT\Applications\python.exe\shell\open\command
把它的值改成:
"C:\Python27\python.exe" "%1" %*
(如果你把Python安装在其他地方,记得修改上面的值)
7
我遇到过完全一样的问题,后来用这个工具解决了:FileTypesManager
问题在于,django-admin.py没有从命令行接收到正确的参数。我做了个测试,在admin脚本的开头加了几行代码,显示参数的数量和内容,然后再继续执行其他操作。这个小改动是:
#!d:\python27\python.exe
from django.core import management
import sys
print 'Number of arguments:', len(sys.argv), 'arguments.'
print 'Argument List:', str(sys.argv)
if __name__ == "__main__":
management.execute_from_command_line()
当你运行django-admin.py时,你会发现其实只传递了一个参数。这显然是不对的。
根据几个论坛的建议,我在命令行尝试了以下两种方法,结果都看起来没问题:
assoc .py --> .py=Python.File
ftype Python.File --> Python.File="D:\Python27\python.exe" "%1" %* //Correct
然后我查看了注册表,里面的值也看起来不错。
但是,当我运行FileTypesManager(这个工具是免费的)时,它显示的情况却不一样。命令行的设置是:
"D:\Python27\python.exe" "%1" //Wrong!
我也不知道为什么,但一旦我更新了这个值,一切就顺利运行了。
希望这能帮到你。