学习django有段时间了,也用django开发了一些web service。代码写完了回首去看,感觉逻辑很乱,始终拜托不了边学边干的影子。其实,要用django写出一个可以服务的简单应用很简单,但是要写出完全符合django framework的MTV模式和逻辑十分清晰的服务却不那么简单。找了很多资料,最终还是觉得django document最靠谱。想通过这边博文介绍里面十分经典的投票选举的例子,麻雀虽小五脏俱全,同时也希望给像我一样的django新手一点帮助。废话不读书哦,迅速进入正题~~~
首先,django-admin.py startproject mysite、配置settings.py(这里主要是设置数据库和语言区域等)、python manage.py syncdb、python manage.py runserver 8080(开发测试环境下用自带的server)。这些我都不说了(包括django工程的结构、每个文件的功能等),接触过django的人应该都十分清楚。接下来需要区分两个概念:app和project。project可以理解为是一个web站点下配置和app的容器,而app则是一个可以完成某项功能的web application。一个project可以包含很多app,一个app也可以被很多project包含达到复用的目的。
对于这个例子,首先在manage.py所在的目录下面运行创建app的命令:python manage.py startapp polls,创建的app名称为polls,它的结构如下图所示: