初识django
Django是什么?
Django是一个python的基于MVC结构的web框架,据说好处在于开发快捷,代码整洁,这个我还不清楚,因为传说中格式优雅的python语法对我来说那坨强制缩进和一些奇怪的self还是看不到优雅到哪里去。另外一个好处就是名气大吧。
安装Django
前提当然是安装python,之后到
http://www.djangoproject.com/download/下载django,文件不算大,只有5M多一点,然后解压开来,利用命令行执行python setup.py install就会自动安装成。之后你可以在IDLE里面试试看import django看看,没有出错就表示安装成功了。
初始化一个项目
在我地方,安装完django后会在Python25文件夹下的Scripts下生成一个django-admin.py的脚本,这个就是用来初始化一个项目的脚本,可以使用命令django-admin.py startproject mysite来初始化一个项目,之后会在当前文件夹或者你指定的文件夹下生成一个mysite的文件夹,文件夹下有几个文件:
__init__.py | 初始化的文件 |
manage.py | 项目管理的脚本 |
setting.py | 项目的配置 |
urls.py | 项目 url的定义 |
初始化之后,可以使用python manage.py runserver命令可以启动服务器,默认端口应该是8000,启动之后如果正常可以在浏览器中查看http://localhost:8000 看到一个默认的页面
Hello world
据说程序员都喜欢hello world程序,虽然我更喜欢使用"亚克西"来开始第一个程序,不过中文有编码等等的问题,于是直接回避:-)
首先我们需要一个脚本来执行一个页面的请求,在mysite文件夹内创建一个文件hello.py,内容如下:
from django.http import HttpResponse;
2
3 html = '<p>hello , ' + name + '</p>';
4
5 return HttpResponse(html);
6
先要导入HttpResponse的类,用来封装一个html的response,name是一个参数,这里是从网址中截取,截取哪里呢?会在url的定义里面规定。
有了处理脚本之后,需要把一个网址映射到这个脚本中去。定义urls.py,把这个文件内容变为:
2
3 from mysite.hello import hello;
4
5
6
7 urlpatterns = patterns('',
8
9 (r'^hello(.+)/$', hello));
10
一个pattern里就是所有的页面映射,第一个参数现在是空的,第二个参数的第一个值是一个正则表达式,这里是以hello开头,后面加上1个以上任何字符串,以/结束,这里把括号中的参数传入到hello中。保存完后可以执行python manage.py runserver,浏览器中http://localhost:8000/hellovivyli/ 可以看到
hello , vivyli
这就是传说中的亚克西程序。