**
什么是ORM
ORM,即Object-Relational Mapping(对象关系映射),它的作用是在关系型数据库和业务实体对象之间作一个映射,这样,我们在具体的操作业务对象的时候,就不需要再去和复杂的SQL语句打交道,只需简单的操作对象的属性和方法。
对象关系映射(Object Relational Mapping,简称ORM)是一种为了解决面向对象与关系数据库存在的互不匹配的现象的技术
SQLAlchemy
SQLAlchemy采用了数据映射模式,其工作的工作基本单元主要使得有必要限制所有的数据库操作代码到一个特定的数据库session,在该session中控制每一个对象的生命周期
核心对象实例化
在入口函数中导入核心对象
**入口函数中添加配置信息
指明数据库的连接
先使用sqlalchemy中的init_app方法实现核心对象的初始化,调用sqlalchemy中的create_all方法实现创建数据表
蓝图
什么是蓝图
蓝图:用于实现单个应用的视图、模板、静态文件的集合。
蓝图就是模块化处理的类。
简单来说,蓝图就是一个存储操作路由映射方法的容器,主要用来实现客户端请求和URL相互关联的功能。 在Flask中,使用蓝图可以帮助我们实现模块化应用的功能。
- 蓝图的构造函数
- 导入各个蓝图
视图函数,用于处理数据显示部分(view)
1.使用注册的蓝图对象的`@web.route 实现路由的分配
2.方法的判断以及验证层的验证
3.数据库方面的操作,数据的读入
4.最后进行页面的渲染
以注册的功能为例,首先通过验证层的验证,验证层实例化if
判断通过,然后将数据传入数据库实现注册。
视图函数包含
模型层表示数据库的记录列表(model)
数据库的实例化
自定义了一个上下文管理器,实现数据对数据库的提交
使用sqlalchemy中的column方法对数据库中的对应字段进行定义
例如 对象的类型,长度,是否是主键,是否唯一,是否允许为null
验证层
使用第三方插件wtforms实现验证,验证输入的字符,密码,格式等,对用户的请求金西行验证。
spider层
实现对api的请求封装