Python学习第47天:ORM与数据库操作
Python学习100天(从入门到精通系列文章)文章目录Python学习100天(从入门到精通系列文章)前言一、项目需求分析二、配置关系型数据库MySQL2.1 创建数据库和用户2.2 创建数据表2.3 安装MySQL驱动2.4 配置Django连接MySQL三、ORM:对象关系映射3.1 什么是ORM3.2 从数据库表生成模型类四、使用ORM完成CRUD操作4.1 新增(Create)4.2 删除(Delete)4.3 更新(Update)4.4 查询(Read)五、利用Django后台管理模型5.1 迁移数据库表5.2 创建超级用户5.3 注册模型类5.4 注册模型管理类六、实现学科页和老师页效果6.1 编写视图函数6.2 配置URL映射6.3 模板页关键代码七、Django模型最佳实践总结前言上一篇我们完成了Django项目的搭建和第一个应用的开发,对Django的MTV架构有了初步认识。但一个真正的应用离不开数据的持久化存储。今天我们将深入学习Django的模型系统,通过一个完整的投票项目来掌握ORM、数据库配置和后台管理等核心知识。一、项目需求分析在上一个章节中,我们提到了Django是基于MVC架构的Web框架,MVC架构追求的是"模型"和"视图"的解耦合。所谓"模型"说得更直白一些就是数据(的表示),所以通常也被称作"数据模型"。在实际的项目中,数据模型通常通过数据库实现持久化操作,而关系型数据库在过去和当下都是持久化的首选方案。下面我们通过完成一个投票项目来讲解和模型相关的知识点。项目需求:首页展示某在线教育平台所有的学科点击学科可以查看到该学科的老师及其信息用户登录后在查看老师的页面为老师投票(赞成票和反对票)未登录的用户可以通过登录页进行登录尚未注册的用户可以通过注册页输入个人信息进行注册在这个项目中,我们使用MySQL数据库来实现数据持久化操作。首先创建Django项目vote并为其添加虚拟环境和依赖项。接下来,在项目下创建名为polls的应用和保存模板页的文件夹templates。我们准备了四个静态页面: