1.什么是模型
  模型,是根据数据库中表的结构而创建出来的class。每一张表对应到编程语言中,就是一个class表中的每一个列对应到编程语言中就class中的一个属性。

2.ORM的三大特征
  1.数据表(table)到编程类(class)的映射
    数据库中的每一张表 对应到 编程语言中 都有一个类
    在ORM中:
      允许将数据表 自动 生成一个类
      允许将类 自动 生成一张数据表
  2.数据类型的映射
    将数据库表中的字段以及数据类型 对应到 编程语言中类的属性
    在ORM中
      允许将表中的字段和数据类型自动映射到编程语言中
      也允许将类中的属性和数据类型也自动映射到表中
  3.关系映射
    将数据库中表与表之间的关系 对应 到编程语言中类与类之间的关系
    数据库中表与表之间的关系:
    1.一对一
      外键,主键,唯一约束
      A表中的一条数据只能与B表中的一条数据相关联

      不懂可以地址看一下:https://www.cnblogs.com/zengsf/p/9898291.html
    2.一对多
      外键,主键
      A表中的一条数据可以与B表中的任意多条数据相关联,反之,B表中的一条数据只能与A表中一条数据相关联

      https://www.cnblogs.com/zengsf/p/9900144.html
    3.多对多
      通过第三张关联表去关联两张表
      A表中的一条数据可以与B表中的任意多条数据相关联,B表中的一条数据也可以与A表中的任意多条数据相关联

3.ORM优点
  1.封装了数据库中所有的操作,大大提高了开发效率
  2.可以省略庞大的数据访问层,即便不用SQL编码也能完成对数据的CRUD的操作

flask中的模型的更多相关文章

  1. day94:flask:Jinjia2模板引擎&flask中的CSRF攻击&Flask-SQLAlchemy的创建模型类和基本的增删改查

    目录 1.Jinjia2模板引擎 1.Jinjia2加载模板并传递数据到模板中 2.Jinjia2的模板语句 3.模板中特有的变量和函数 4.模板中内置的过滤器 5.自定义过滤器 6.模板继承 2.在 ...

  2. Flask 中的 SQLAlchemy 使用教程

    Flask 是一个 python web micro framework.所谓微框架,主要是 flask 简洁与轻巧,自定义程度高.相比 django 更加轻量级. 之前一直折腾 django,得益于 ...

  3. Python框架学习之Flask中的数据库操作

    数据库操作在web开发中扮演着一个很重要的角色,网站中很多重要的信息都需要保存到数据库中.如用户名.密码等等其他信息.Django框架是一个基于MVT思想的框架,也就是说他本身就已经封装了Model类 ...

  4. flask中如何生成迁移文件

    在flask网站开发中,如果直接对数据库进行修改的话,风险比较高,最好的是由迁移文件生成,这样确保了数据的误操作. 在Flask中可以使用Flask-Migrate扩展,来实现数据迁移.并且集成到Fl ...

  5. flask中利用from来进行对修改修改时旧密码的验证

    在flask中,肯定是post提交个from进行密码验证.还有一定就是修改密码肯定是登录之后才能进行对密码的修改,这么说,在浏览器中的session中一定会有用户的信息,可以通过相对应的信息去获取到相 ...

  6. Flask中的ORM使用

    前言 ORM拓展 安装 数据库设置 使用 关系 单表操作 建表 应用表结构 CRUD 添加查找操作 更新操作 删除操作 一对多 多对多 总结 前言 最近几天接触了一下Flask,在惊叹于其简洁性的同时 ...

  7. Flask之自定义模型类

    4.3自定义模型类 定义模型 模型表示程序使用的数据实体,在Flask-SQLAlchemy中,模型一般是Python类,继承自db.Model,db是SQLAlchemy类的实例,代表程序使用的数据 ...

  8. Flask中对MySQL的基本操作

    在Flask-SQLAlchemy中,插入.修改.删除操作,均由数据库会话管理. 会话用 db.session 表示.在准备把数据写入数据库前,要先将数据添加到会话中然后调用 commit() 方法提 ...

  9. flask 中的ORM

    1 响应(response) 1 什么是响应 响应就是由服务器端带给客户端的内容,对应着请求,响应可以是普通的字符串,模板 或重定向 return '普通字符串' return render_temp ...

随机推荐

  1. openstack安装指南和在centos7上的安装指南

    openstack安装指南官网:http://docs.openstack.org/project-install-guide/newton/ openstack在centos7上的安装指南官网:ht ...

  2. VSS迁移详细教程

    本文默认迁移机和目标机已是安装好VSS服务,如果没装好参见VSS+SourceAnywhere for VSS搭建版本控制系统教程 如果你只想以最快的速度迁移库而并不关心VSS的一些操作使用,那么可直 ...

  3. weblogic开启http访问日志并实时写入日志文件

    由于http访问会产生大量日志,耗去不少IO和CPU所以在生产一般是不启用的:但有时我们会想启用http访问日志,尤其是在系统上线调试的时候. weblogic的日志默认在domain_name/se ...

  4. Eclipse集成weblogic教程

    1.在线安装插件 1.1安装Oracle Weblogic Servers Tools oeop是添加的软件仓库的名字,随便写主要是方便记. 仓库链接:http://www.oracle.com/te ...

  5. Eclipse导入Oracle/MySQL数库驱动包教程

    在操作数据库时除了import相关的SQL类外,还得在项目中导入数据库的驱动才能连接和操作数据库. 而数据库驱动jar包在默认Java的lib里是没有的,要自己到官网下载导入:本教程以Oracle为例 ...

  6. Vue--项目开发之实现tabbar功能来学习单文件组件1

    创建好一个Vue项目后,我们进入项目里,点开src文件下的components文件里的helloworld.vue 文件.清空初始数据.然后开始编写. 一个.vue文件初始格式为以下三部分(组件三部曲 ...

  7. git merge branch

    git branch   look at your branches git branch newbranch git checkout newbrach do something git check ...

  8. nyoj-0613-免费馅饼(dp)

    nyoj-0613-免费馅饼 G. 免费馅饼 都说天上不会掉馅饼,但有一天gameboy正走在回家的小径上,忽然天上掉下大把大把的馅饼.说来gameboy的人品实在是太好了,这馅饼别处都不掉,就掉落在 ...

  9. 【用例管理】用testng的groups管理用例

    一.需求: 测试时经常有两种场景,第一种是冒烟测试的小部分用例:一类是全部用例. 二.针对第一种运行部分的用例,可以用groups来管理 package com.testcases; import o ...

  10. MySQL5.6数据库8小时内无请求自动断开连接

    问题: 最近的项目中,发现Mysql数据库在8个小时内,没有请求时,会自动断开连接,这是MySQL服务器的问题.The last packet successfully received from t ...