web开发之Django(五)(数据库的存取,页面跳转)

一、关于ORM模型

ORM的作用是在关系型数据库和业务实体对象之间进行映射,就不用再去和复杂的SQL语句打交道,只需要简单的操作对象属性和方法就可以了,
ORM的表现方式就是编写数据模型类,这些类可以写到任何文件中,通常卸载每个应用的model.py文件中,每个数据模型类都是django.db.models.Model的子类
组成方式:应用名称(小写)+数据模型类(小写)
举个栗子:blog_blogarticles

二、简单的数据模型类基本结构

web开发之Django(五)(数据库的存取,页面跳转)数据模型类(model)中可以命名舒心(变量)和方法。
每个属性(变量)对应着数据库中额度一个字段,所以变量也会被称为字段,Django会为每个数据模型设置一个自增长的id字段并作为该表的主键,需要在数据模型类中写出来,
1、Charfield 用于保存字符串,不过在使用的时候需要指明长度
2、TextField:和CharField一样,区别在于无上限,通常用于保存大文本
3、DateField和DateTimeField 用于保存时间

三、数据迁移

1、在虚拟环境下执行数据迁移命令
命令:python manage.py makemigrations
web开发之Django(五)(数据库的存取,页面跳转)
对应的应用里面的migrations文件夹产生了一个0001_initial.py文件
web开发之Django(五)(数据库的存取,页面跳转)在对应的应用里面的2、执sqlmigrate命令 查看生成文件本质
命令:python manage.py sqlmigrate +应用名 文件名前缀
例如:python manage.py sqlmigrate myblog 0001
web开发之Django(五)(数据库的存取,页面跳转)
3、执行migrate命令真正生成数据库的表问文件
命令:python manage.py migrate
会呈现如下效果
web开发之Django(五)(数据库的存取,页面跳转)我们可以用navicat mysql工具中的blog数据库,能够看到生成的数据表,如图所示:
web开发之Django(五)(数据库的存取,页面跳转)web开发之Django(五)(数据库的存取,页面跳转)说明数据库中的表已建成

四、编写页面,向数据库上传数据和提取数据

1、下载好BootStrap的样式,这里笔者一传,将bootstrap放入static文件夹中
web开发之Django(五)(数据库的存取,页面跳转)编写好简单的简易的表单,并添加bootstrap样式
web开发之Django(五)(数据库的存取,页面跳转)样式如何选择,可以直接上完搜bootstrap的教程

web开发之Django(五)(数据库的存取,页面跳转)形成表单如图:
web开发之Django(五)(数据库的存取,页面跳转)2、这里特别要注意,form表单中要添加一个中间键,这个中间键就像一个通行令牌一样,如果没有的话,上传数据会报错
web开发之Django(五)(数据库的存取,页面跳转)这个就是我们设置settings.py文件时的中间件
web开发之Django(五)(数据库的存取,页面跳转)3、设置form表单上传路径action,url的反向解析
web开发之Django(五)(数据库的存取,页面跳转)4、应用的urls.py编写对应的路径

web开发之Django(五)(数据库的存取,页面跳转)5、在应用的views.py文件中添加对应的函数
web开发之Django(五)(数据库的存取,页面跳转)6、添加成功之后,我们可以让我们的添加内容先是出来,也就是跳转页面
web开发之Django(五)(数据库的存取,页面跳转)
7、再次在urls.py设置跳转页面的路径
web开发之Django(五)(数据库的存取,页面跳转)8、在views.py文件中设置显示页面的函数和表单内容
web开发之Django(五)(数据库的存取,页面跳转)
9、比那些显示页面,并将数据库内容遍历出来
web开发之Django(五)(数据库的存取,页面跳转)10、最终填写内容提交表单,会发生页面跳转
web开发之Django(五)(数据库的存取,页面跳转)点击添加按钮,跳转页面
web开发之Django(五)(数据库的存取,页面跳转)