Python Django网站开发(二):Django应用的创建和路由配置

408 阅读4分钟

本文已参与「新人创作礼」活动,一起开启掘金创作之路。

在之前python django环境已经搭建好的基础上,开始创建django应用。

首先介绍一下,该网站的基本模块结构。包括首页模块homeApp,公司简介模块aboutApp,人才招聘模块contactApp、新闻动态模块newsApp、产品中心模块productsApp、服务支持模块serviceApp、科研基地模块scienceApp。各个模块下面还包含了不同的子模块。

13.企业门户网站结构.png

1.创建视图文件:

chuangdaproject文件夹下手动创建视图文件views.py

1.创建视图文件.png

2.创建django应用。

Django提供了一种多应用机制,即一个Django项目可以包含多个应用,每个应用可以实现一定的功能,或者每个应用可以对应部分访问内容。
下面先梳理一下Django项目和应用的关系:
(1)一个Django项目中包含一组配置(即与项目同名的子文件夹)和若干个Django应用
(2)一个Django应用就是一个可重用的Python包,实现一定的功能。
(3)一个Django项目可以包含多个Django应用
(4)一个Django应用也可以被包含到多个Django项目中,因为Django应用是可重用的Python包。
如何在pycahrm中创建一个Django应用呢?

步骤1Tools——>Run manage.py

2.创建django应用.png

步骤2:输入startapp homeApp命令,创建一个名为homeApp的应用,用来设计首页内容。

3.创建首页homeApp.png

步骤3:此时创建的应用还存在于虚拟机中,需要手动下载下来。鼠标右击最外层chuangdaproject——>Deployment——>Download from chuangdaproject,将创建的homeApp应用从虚拟机中下载下来。弹框选择Always

4.把homeApp从虚拟机中下载下来.png

5.弹框选择always.png

下载后的文件目录如下图所示。新创建的应用包含以下文件夹。
(1)migrations:数据库迁移文件夹,在执行数据库迁移的时候会产生一些中间结果,这些结果就存放在该文件夹中。
(2)init.py标识文件,可以是一个空文件。
(3)admin.py管理员配置文件,主要是用来注册一些数据库中的模型到后台管理模板中。
(4)apps.py应用的配置文件,一般情况下不需要修改。
(5)models.py数据库文件,用来管理数据库中的模型数据。
(6)tests.py测试文件,可以对应用做一些测试。
(7)views.py视图文件,对于每个访问的实际处理操作都是在这个文件中进行编写。在这个文件中定义了每个访问/路由的处理函数,每个访问与哪个函数绑定则由urls.py文件配置。
注意,homeApp应用新创建的时候并没有urls.py文件,需要自己手动创建,用来配置路由信息。

6.下载后的文件夹目录.png

同理,我们创建一个名为aboutApp的应用,用来设计公司简介模块。

3.配置项目根路由文件(即chuangdaproject文件夹下的urls.py文件)。

django.urls导入include函数,从homeApp.views中直接导入home前提是在homeApp的视图文件中已经创建home函数,后面会介绍 )。
然后是配置路由,homeApp尽管作为一个独立的应用进行设置,但是首页的路由比较特殊,一般情况下,网站的根访问路径对应网站的首页(即访问127.0.0.1:8001即可访问到homeApp中的视图文件,浏览首页内容),不需要定位到某个具体的应用路径下满。因此,只需要在项目根路由文件中的urlpatterns字段中添加path('',home,name='home') 代码即可。
而aboutApp中还包含有两个子模块survey()honor() 函数,此时需要对其配置二级路由,用include导入aboutApp.urls文件。代码如下:

7.配置项目根路由文件.png

4.配置aboutApp下的路由配置。

打开aboutApp下的urls.py文件。输入以下代码:

9.aboutApp二级路由配置.png

5.配置chuangdaproject文件夹下的settings.py文件。

把创建的homeAppaboutApp注册进在INSTALLED_APPS 字段中,如果没有注册,之后无法创建这个数据库。同时在ALLOWED_HOSTS 字段开放访问权限,方便后期的部署和访问。如下图所示:

8.settings.py配置1.png

6.编写视图函数。

在homeApp的views.py文件中输入以下代码,用来测试路由配置是否成功。从django包中的shortcuts模块中导入HttpResponse()函数,然后定义视图处理函数home( ),调用HttpResponse( )返回一个html字符串给前端进行显示,配置成功,则在页面显示“首页”字样。
homeApp中的views.py文件代码:

11.homeApp视图函数配置.png

同理,aboutApp中的views.py文件代码:

10.aboutApp视图函数配置.png

7.启动项目,在浏览器中输入网址。

在pycharm中启动项目后,在浏览器中输入网址。
1)输入127.0.0.1:8001,显示“首页”
2)输入127.0.0.1:8001/aboutApp/survey,显示“企业概况”
3)输入127.0.0.1:8001/aboutApp/honor,显示“荣誉资质”
以上显示结果成功,表示路由配置正确。
同理,创建人才招聘应用contactApp、新闻动态应用newsApp、产品中心应用productsApp、服务支持应用serviceApp、科研基地应用scienceApp。最后创建的目录如下:

12.最后创建完的目录.png

参考书目:
《Python Web开发从入门到实战》钱彬 著
《Pyhton Web开发案例教程》南淑萍等 著