8.2 url匹配的过程在项目的urls.py文件中包含具体应用的urls.py文件,应用的urls.py文件中写url和视图函数的对应关系 。
文章插图
当用户输入如http://127.0.0.1:8000/aindex时,去除域名和最前面的/,剩下aindex,拿aindex字符串到项目的urls文件中进行匹配,配置成功之后,去除匹配的a字符,那剩下的index字符串继续到应用的urls文件中进行正则匹配,匹配成功之后执行视图函数index,index视图函数返回内容hellopython给浏览器来显示 。
9. 模板模板不仅仅是一个html文件 。
9.1 模板文件的使用
- 创建模板文件夹
- 配置模板目录
文章插图
- 使用模板文件
- 加载模板文件
- 去模板目录下面获取html文件的内容,得到一个模板对象 。
- 定义模板上下文
- 向模板文件传递数据 。
- 模板渲染
- 得到一个标准的html内容 。
- 加载模板文件
- 设计出访问页面的url和对应的视图函数的名字,确定视图函数的功能 。
- 设计模板文件的名字 。
- 完成图书信息的展示:
- 设计url,通过浏览器访问 http://127.0.0.1:8000/books 时显示图书信息页面 。
- 设计url对应的视图函数show_books 。查询出所有图书的信息,将这些信息传递给模板文件 。
- 编写模板文件show_books.html 。遍历显示出每一本图书的信息 。
- 完成点击某本图书时 , 显示出图书里所有英雄信息的页面 。
- 设计url,通过访问http://127.0.0.1:8000/books/数字时显示对应的英雄信息页面 。这里数字指点击的图书的id 。
- 设计对应的视图函数detail 。接收图书的id,根据id查询出相应的图书信息 , 然后查询出图书中的所有英雄信息 。
- 编写模板文件detail.html 。
文章插图
O(objects):类和对象 。
R(Relation):关系,关系数据库中的表格 。
M(Mapping):映射 。Django ORM框架的功能:
- 建立模型类和表之间的对应关系,允许我们通过面向对象的方式来操作数据库 。
- 根据设计的模型类生成数据库中的表格 。
- 通过方便的配置就可以进行数据库的切换 。
文章插图
注意:django框架不会自动帮我们生成mysql数据库,所以我们需要自己去创建 。
2.3 切换mysql数据库之后不能启动服务器需要安装操作mysql数据库的包,python2环境和python3环境有以下区别 。
- python2需要安装mysql-python:
pip install mysql-python
- python3需要安装pymysql:
pip install pymysqlpython3中安装好pymysql,需要在test2/init.py中加如下内容:
3. 复习案例
文章插图
页面重定向:服务器不返回页面,而是告诉浏览器再去请求其他的url地址 。
- 设计模型类并生成表
- 设计BookInfo,增加属性bread和bcomment,另外设置软删除标记属性isDelete 。
- 设计HeroInfo类,增加软删除标记属性isDelete 。软删除标记:删除数据时不做真正的删除,而是把标记数据设置为1表示删除 , 目的是防止重要的数据丢失 。
- 编写视图函数并配置URL 。
- 创建模板文件 。拆解功能:
- 图书信息展示页 。
- 设计url,通过浏览器访问 http://127.0.0.1:8000/index时显示图书信息页面 。
- 设计url对应的视图函数index 。查询出所有图书的信息,将这些信息传递给模板文件 。
- 编写模板文件index.html 。
遍历显示出每一本图书的信息并增加新建和删除超链接 。
- 图书信息新增 。a. 设计url , 通过浏览器访问 http://127.0.0.1:8000/create时向数据库中新增一条图书信息b. 设计url对应得视图函数create 。
- 图书信息删除 。a. 设计url,通过浏览器访问 http://127.0.0.1:8000/delete数 字删除数据库中对应的一条图书数据其中数字是点击的图书的id 。b. 设计url对应的视图函数delete 。获取图书的id,进行删除 。
推荐阅读
- Asp.Net Core6.0中MediatR的应用CQRS
- 支持JDK19虚拟线程的web框架之四:看源码,了解quarkus如何支持虚拟线程
- 1.docker的基本使用
- 21 基于SqlSugar的开发框架循序渐进介绍
- 明日方舟雪雉模组雪雉的宝贝存钱罐效果怎么样
- 苹果13什么时候上市的几月份_苹果13在几月份上市
- ysl416唇釉味道怪怪的_圣罗兰416唇釉什么味道
- 米饭的英语怎么读 米饭英语
- 三星zFlip3参数配置_三星zFlip3配置详情
- iphone13买多大内存的合适_怎么选择