如何在OSX 10.7(lion)上初始化内置的django开发服务器

如何在OSX 10.7(lion)上初始化内置的django开发服务器,django,django-admin,Django,Django Admin,跑步时 $django-admin.py运行服务器 我得到: (红色字体) 错误:无法导入设置,因为环境变量 DJANGO\u设置\u模块未定义。 在以前的版本(python 2.5、django 1.2)中,我从未遇到过这个问题。 我试着手动设置设置模块,然后它告诉我把它放在sys.path上。使用python解释器在bash中设置sys路径后,我将其关闭,并从sys.path中显示它?我使用OSX 10.7的Apache2.2.19和Python2.7.1即时构建。没有主意了。救命 为什么人

跑步时

$django-admin.py运行服务器

我得到: (红色字体)

错误:无法导入设置,因为环境变量 DJANGO\u设置\u模块未定义。

在以前的版本(python 2.5、django 1.2)中,我从未遇到过这个问题。
我试着手动设置设置模块,然后它告诉我把它放在sys.path上。使用python解释器在bash中设置sys路径后,我将其关闭,并从sys.path中显示它?我使用OSX 10.7的Apache2.2.19和Python2.7.1即时构建。没有主意了。救命

为什么人们一直试图用
django admin.py
运行devserver?这在哪里有记录


正确的方法是使用
manage.py

如果您有一个更自定义的设置(即,一个未被称为settings.py的设置文件,或者您有多个设置文件并希望在它们之间切换),则必须使用django-admin.py启动devserver

当您使用django-admin.py时,您必须给它两个额外的命令行参数,以便它知道您的项目在哪里以及要使用的设置文件

例如:

您的项目存在于:
/path/to/myproject

设置文件:
/path/to/myproject/site1.py

django-admin.py runserver --pythonpath=/path/to/myproject --settings=site1

我真的弄明白了。对于像我这样健忘的人,您必须通过在shell前面添加python来将这些变量传递给shell

python manage.py runserver

如果前面没有python,shell就不知道将其发送到哪里

。。。有经验的Djangor知道manage.py基本上是django-admin.py的包装,其中包括项目设置,因此您实际上应该使用manage.py,但是我可以看出新手用户会被文档弄糊涂。可能应该在文档中添加一些说明。实际上,文档中确实说明了在许多情况下,您应该用manage.py替换django-admin.py,但在最上面的一两句话中就可以做到这一点。大多数寻找特定管理命令的人可能从未看到过这一点。一开始我也没有。