本文已参与「新人创作礼」活动,一起开启掘金创作之路。
在之前python django环境已经搭建好的基础上,开始创建django应用。
首先介绍一下,该网站的基本模块结构。包括首页模块homeApp,公司简介模块aboutApp,人才招聘模块contactApp、新闻动态模块newsApp、产品中心模块productsApp、服务支持模块serviceApp、科研基地模块scienceApp。各个模块下面还包含了不同的子模块。
1.创建视图文件:
在chuangdaproject文件夹下手动创建视图文件views.py。
2.创建django应用。
Django提供了一种多应用机制,即一个Django项目可以包含多个应用,每个应用可以实现一定的功能,或者每个应用可以对应部分访问内容。
下面先梳理一下Django项目和应用的关系:
(1)一个Django项目中包含一组配置(即与项目同名的子文件夹)和若干个Django应用。
(2)一个Django应用就是一个可重用的Python包,实现一定的功能。
(3)一个Django项目可以包含多个Django应用。
(4)一个Django应用也可以被包含到多个Django项目中,因为Django应用是可重用的Python包。
如何在pycahrm中创建一个Django应用呢?
步骤1:Tools——>Run manage.py
步骤2:输入startapp homeApp命令,创建一个名为homeApp的应用,用来设计首页内容。
步骤3:此时创建的应用还存在于虚拟机中,需要手动下载下来。鼠标右击最外层chuangdaproject——>Deployment——>Download from chuangdaproject,将创建的homeApp应用从虚拟机中下载下来。弹框选择Always。
下载后的文件目录如下图所示。新创建的应用包含以下文件夹。
(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文件,需要自己手动创建,用来配置路由信息。
同理,我们创建一个名为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文件。代码如下:
4.配置aboutApp下的路由配置。
打开aboutApp下的urls.py文件。输入以下代码:
5.配置chuangdaproject文件夹下的settings.py文件。
把创建的homeApp和aboutApp注册进在INSTALLED_APPS 字段中,如果没有注册,之后无法创建这个数据库。同时在ALLOWED_HOSTS 字段中开放访问权限,方便后期的部署和访问。如下图所示:
6.编写视图函数。
在homeApp的views.py文件中输入以下代码,用来测试路由配置是否成功。从django包中的shortcuts模块中导入HttpResponse()函数,然后定义视图处理函数home( ),调用HttpResponse( )返回一个html字符串给前端进行显示,配置成功,则在页面显示“首页”字样。
homeApp中的views.py文件代码:
同理,aboutApp中的views.py文件代码:
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。最后创建的目录如下:
参考书目:
《Python Web开发从入门到实战》钱彬 著
《Pyhton Web开发案例教程》南淑萍等 著