教材来源:http://djangobook.py3k.cn/2.0/
一、安装
https://www.djangoproject.com/download/ 来这里下载最新版本的Django包,我下的是
https://www.djangoproject.com/m/releases/1.5/Django-1.5.1.tar.gz
tar xzvf Django-1.5.1.tar.gz
cd Django-1.5.1
sudo python setup.py install
在Linux下还是很方便的,安装完自动会把django-admin.py 应该已被加入了系统路径中。
二、新建项目
python django-admin.py startproject mysite
这样就建立了一个叫做“mysite”的项目了。
文件说明:
mysite/
manage.py :一种命令行工具,允许你以多种方式与该 Django 项目进行交互。
mysite/
__init__.py :让 Python 把该目录当成一个开发包 (即一组模块)所需的文件,就是import的时候可以直接使用mysite.XXX了,只要目录下有这个文件,就可以被Python收录成为包。
settings.py :该 Django 项目的设置或配置。
urls.py:Django项目的URL设置,类似于struts.xml配置请求路由的。
初次运行:
python manage.py runserver
现在可以访问:http://127.0.0.1:8000/
非本地访问:
python manage.py runserver 0.0.0.0:8000
0.0.0.0表示监听任意网络接口
三、Hello World:
1、在mysite/mysite/ 下新建目录views,views目录下新建文件__init__.py和view.py(前者新建好保持空即可)。
2、在view.py中添加内容:
from django.http import HttpResponse
def hello(request):
return HttpResponse("Hello world")
3、修改urls.py找到
urlpatterns = patterns('',...)
添加或修改:
from views.view import hello
urlpatterns = patterns('',
('^hello/$', hello),
)
('^$', index)
表示一个空串(当然index这个函数得在view.py里定义了)
4、动态URL
编辑url.py:
urlpatterns = patterns('',
(r'^hello/$', hello),
(r'^time/$', current_datetime),
(r'^time/plus/(\d{1,2})/$', hours_ahead),
)
(\d{1,2})表示第一个分组
编辑views/view.py:
from django.http import Http404, HttpResponse
import datetime
def hours_ahead(request, offset):
try:
offset = int(offset)
except ValueError:
raise Http404()
dt = datetime.datetime.now() + datetime.timedelta(hours=offset)
html = "<html><body>In %s hour(s), it will be %s.</body></html>" % (offset, dt)
return HttpResponse(html)
offset匹配第一个分组(
unicode对象
),如果url中有两个正则的分组(两个小括号),则 def hours_ahead(request, offset, offset2):
在函数定义时添加两个参数即可。
OK,暂时到此为止,涵盖了教程的前三章。