分类: Python/Ruby
2009-03-16 10:04:33
是经常与Rails相提并论的Python Web框架。但别的姑且不说,Django的环境搭建实在是不够亲切,简单的搭建过程中被雷到多次,特记录如下以供备忘。
确保在Django安装之前已经安好了Python。
Django的最新Source可以从SVN获得:
然后执行Django的setup.py
python setup.py install
这里建议把python目录下的script文件夹加入环境变量
虽然Django内置了Web服务器,但官方建议使用Apache的mod_python模块(- -|||那你还写他干什么)
安装好Apache后,从获得mod_python并安装(注意下载对应的python和Apache版本)
安装完毕后Apache目录下的modules文件夹内会有mod_python.so,在httpd.conf中写入
LoadModule python_module modules/mod_python.so
将mod_python模块加载进来然后重启Apache
进入到在Apache的web页面目录下运行
django-admin.py startproject newtest
至此我们的第一个Django项目便成功创建了,此时需要牢记项目名称『newtest』,因为真正的雷才刚刚开始- -。
同样是修改httpd.conf,下面是来自Django官网的配置例子
SetHandler python-program PythonHandler django.core.handlers.modpython SetEnv DJANGO_SETTINGS_MODULE mysite.settings PythonDebug On PythonPath "['/path/to/project'] + sys.path"
这里有三个参数需要注意:
因此我的Apache的htdocs目录位于D:\xampp\htdocs,最终设置结果为
SetHandler python-program PythonPath "sys.path+['D:/xampp/htdocs']" PythonHandler django.core.handlers.modpython SetEnv DJANGO_SETTINGS_MODULE newtest.settings PythonDebug On
然后重启Apache,访问,就可以看到亲切的django运行画面了。
终于可以开始第一个程序了,在Django项目下新建一个helloworld.py文件,内容为
from django.http import HttpResponse def index(request): return HttpResponse("Hello, Django.")
然后编辑urls.py
from django.conf.urls.defaults import * urlpatterns = patterns('', (r'^newtest/index', 'newtest.helloworld.index'), )
最后重启Apache - -|||,注意Django的所有配置更新都是需要重启Apache的……通过index看看结果吧……