1 项目(project)与应用(app)的概念
由于未在官方文档中找到这两个概念的解释,在这里我用自己的话大概描述下:项目就是一个应用软件系统,比如之前通过django-admin.py startproject创建的就是一个项目;应用可以理解为项目中的一个模块,这和asp.net中area或zend frameword中module的概念相似,django是通过如下命令创建应用的:python manage.py startapp。
大部分项目中都分为多个应用(即模块),比如普通用户模块,系统管理模块等等。
与之前在.NET/JAVA/PHP整合的项目相似,本系列文章开发的项目名称为:website_python,并创建两个应用(模块):
(1).default:该模块为默认模块,也就是普通用户访问的模块;
(2).manage:管理模块,即管理员维护系统所使用的模块。
当然,考虑复杂系统的情况可以不仅限于这两个模块,比如以电子商务网站来说,可能包含用户模块、商家模块、系统管理模块等等,但这里不做复杂情况的示例说明。
2 创建website_python项目
在上一篇创建的website_python项目基础上继续讲解.
这里说明下几个重要的文件:
manage.py:用来与Django项目交互的命令行程序
website_python目录:
settings.py:项目配置文件
urls.py:URL配置文件
wsgi.py:Web 服务器网关接口入口点
打开website_python/setting.py文件,修改其中的语言编码和时区,如下图示:
改为
并修改项目的默认编码,方法是在项目上点击右键选择“Properties”->"Resource",更改其中的文件编码为“UTF-8”,如下图示:
3 创建应用(app)
现在一切就继,我们可以创建管理模块(应用)了,习惯上我喜欢把前台用户使用的模块叫“default”,后台管理模块叫“manage”,但python默认情况下不允许创建“manage”应用。码农好像都是比较任性的,那就跟我来做,步骤如下:
A.启用cmd窗口,切换到项目根目录:F:\Administrator\桌面\Website\website_python
B.输入:python manage.py startapp maintain 并回车
C.输入:ren maintain manage 并回车,如下图示:
D.刷新MyEclipse项目,项目文件如下:
4 测试manage应用
为了测试我们新建的项目和manage应用,现在来为manage应用创建一个“Hello World”。步骤如下:
A.首先告诉系统我们新增了一个应用,修改“website_python”目录下的“settings.py”文件,在INSTALLED_APPS元素中增加manage,完成后如下:
B.打开manage目录下的views.py文件,即文件:F:\Administrator\桌面\Website\website_python\manage\views.py,首先导入HttpResponse,然后加入如下代码:
def hello(request):
return HttpResponse("Hello world!")
完成后的代码文件内容如下:
C.打开目录“website_python”下的“urls.py”,在“urlpatterns”看增加一个配置: ('^manage/hello/$', hello),并导入hello方法,完成后的文件内容如下:
D.启动项目并访问,在cmd窗口中切换到项目根目录,即:F:\Administrator\桌面\Website\website_python,然后输入:python manage.py runserver,然后在浏览器中输入:http://127.0.0.1:8000/manage/hello/,hello world就显示出来了: