django第一个视图函数或者视图类(二)

django的安装见:django的安装教程

一、项目工程目录结构介绍

在这里插入图片描述

Django05:项目同名的目录,主要存放相关配置信息
Django05/init.py:当前Django05为一个包
Django05/asgi.py:主要用于存放ASGI异步请求的入口配置信息
Django05/settings.py:存放的是项目全局配置信息
Django05/urls.py:主要存放项目的路由信息
Django05/wsgi.py:主要用于存放WSGI协议服务的入口配置信息(一般在部署时会使用)
db.sqlite3:默认的关系型文本数据库
manage.py:为命令行管理工具,用于开发阶段的项目启动、数据迁移、静态文件收集等等

二、定制一个页面

1、创建子应用

a.python mangage.py startapp 子应用名
b.推荐子应用名小写复数形式,不要用中文
在这里插入图片描述
projects/migrations:存放数据库迁移脚本和迁移历史记录等信息
projects/admin.py:admin后台站点的相关配置(需要后台站点是才会用到)
projects/apps.py:为app label的相关配置(很少使用)
projects/models.py:存放数据库模型相关信息
tests.py:对当前子应用进行自测,写单元测试
projects/views.py:定义业务逻辑(先前端返回的页面)

2、需要在全局配置文件Django05/settings.py中的INSTALLED_APPS,对子应用进行注册

子应用名.apps.子应用名首字母大写Config
在这里插入图片描述

3、创建视图函数

在projects/views.py下创建视图函数或者视图类

注意:类视图要继承View

在这里插入图片描述

4、在子路由表中添加路由信息

在这里插入图片描述

5、在全局路由表中添加路由信息

注意:include中传入:app名称.urls,此处为projects.urls

在这里插入图片描述

6.结果演示:

函数视图,get请求演示
在这里插入图片描述
类视图psot请求演示:
在这里插入图片描述

三、视图及路由原理

1.视图

a. 前端获取一个页面,其实就相当于调用后端的一个函数
b. web应用如何调用后端服务(视图函数):前端访问url ——>》通过指定的路由访问到对应的函数或者类视图——》若是函数视图,直接调用函数返回结果,若是类视图,直接调用相应里面的相应方法,必须使用get,post等命名方法名
c. 关于类视图:在path路由中,通过指定类名.as_view()添加路由映射,as_view()方法后面的括号不能省,as_view()其实是一个内嵌函数,通过内部返回的view方法继续调用dispatch()进行请求的分发
d. url与后端视图函数关系相当于一个一一映射表

2.路由匹配规则

1、urlpatterns为名称固定的列表,用于存放路由信息
2、列表中的元素个数,就是路由条数
3、路由配置规则:
a.从列表的第一个元素开始(从上到下)开始匹配
b.一旦匹配成功,会自动调用path第二个参数所指定的视图函数
c.一旦匹配成功之后,不会再往下匹配
d.如果匹配不成功,会返回一个状态码为404的页面
e.url路由信息,推荐使用/结尾

4、可以在子应用中定义子路由,子应用名/urls.py中来定义
5、可以使用include函数来加载子路由,第一个参数为字符串(‘子应用名.urls’)
6、如果url第一部分匹配成功,那么会将url剩下的部分拿到子路由中去匹配

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值