随笔分类 - FastAPI 从入门到精通
每日更新fastapi 框架教学
摘要:在使用过程中,会发现上述第三步的使用,会有不少局限,譬如必须切换到指定目录才能操作等。通过安装virtualenvwrapper-win 可以更加简便的使用虚拟环境(需要先安装virtualenv)1. pip安装 pip install virtualenvwrapper-win 2. 在环境变量
阅读全文
摘要:1. 安装好python环境 2. 安装虚拟环境库,在cmd中输入: pip install virtualenv3. 创建虚拟环境,在cmd中切换到需要创建虚拟环境的目录下,执行: virtualenv env_name4. 激活虚拟环境,在cmd中进入到 第三步创建的 env_name/Scri
阅读全文
摘要:过滤是数据提取的一个很重要的功能,以下对一些常用的过滤条件进行解释,并且这些过滤条件都是只能通过where方法实现的:1. equals : ==,或者.is_ 函数2. not equals : != 或者 isnot函数3. like & ilike [不区分大小写]:4. 在某个集合中存在,i
阅读全文
摘要:1) 先查询,再删除 # 先查询出来,再删除 emp = session.get(Employee, 2) session.delete(emp) 2) 直接删除 # 删除的数据,由where条件决定session.execute(delete(Employee).where(Employee.id
阅读全文
摘要:1) 先查询出来,再修改属性 # 查询,再修改 old_emp = session.get(Emp, 1) print(old_emp.name) old_emp.name = '李四' 2) 直接根据主键修改 # 注意where语句就是条件的意思,其中id前面的Employee必须有 sessio
阅读全文
摘要:1)根据主键查询emp = session.get(Emp, 1)2) 查询整张表的数据 a、返回模型对象 statement = select(Employee) list_emp = session.scalars(statement).all() for o in list_emp: prin
阅读全文
摘要:对模型对象进行新增,有两种方式: <!--第一种:类SQL方式--> insert_stmt = insert(User).values(name='name1') with Session() as sess: sess.execute(insert_stmt) sess.commit() <!-
阅读全文
摘要:session用于创建程序和数据库之间的会话,所有对象的载入和保存都需通过session对象 。在Web项目中,一个请求共用一个session对象 1、创建Session对象的两种方式 # 第一种,需要自己提交事务 with Session(bind=engine) as session: sess
阅读全文
摘要:# 关联查询 isouter=True 表示使用外连接# 1、查询2020年入职的员工姓名以及该员工的所在部门名称result = session.execute(select(Employee.name, Dept.name).join(Dept,isouter=True).where(extra
阅读全文
摘要:在 SQLAlchemy 中,要想表示多对多关系,除了关系两侧的模型外,我们还需要创建一个关联表(middle_table)。关联表不存储数据,只用来存储关系两侧模型的外键对应关系。 # 多对多关联,先定义中间表(没有对应的模型类) middle_table = Table( 't_user_rol
阅读全文
摘要:一对一关系实际上是通过建立双向关系的一对多关系的基础上转化而来。比如:一个用户对应一张身份证,一张身份证属于一个用户。 class IdCard(Base): """省份证的模型类, 它和员工之间是一对一的关联关系""" __tablename__ = 't_id_card' id: Mapped[
阅读全文
摘要:比如:作者和文章之间, 部门和员工之间都是一对多的关联关系。反过来就是:多对一的关联关系 1、定义外键约束 定义关系的第一步是创建外键。外键是(foreign key)用来在 A 表存储 B 表的主键值以便和 B 表建立联系的关系字段。因为外键只能存储单一数据(标量),所以外键总是在 “多” 这一侧
阅读全文
摘要:Alembic 使用 SQLAlchemy 作为底层引擎,为关系数据库提供变更管理脚本的创建、管理和调用。 安装alembic pip install alembic 2、初始化alembic环境 命令: alembic init alembic 3、修改配置和环境 此处修改两个地方: 1 alem
阅读全文
摘要:定义模型类 这种模型类结构称为声明性映射,它同时定义了 Python 对象模型,以及描述的数据库元数据 在特定数据库中存在或将要存在的真实 数据库 表。映射从一个基类开始,并且是 通过对类的继承来创建一个简单的子类。这里的父类是:Base 模型类。1、定义模型 # 定义所有模型的父类 class B
阅读全文
摘要:任何SQLAlchemy应用程序的开始都是一个名为 Engine . 此对象充当连接到特定数据库的中心源,提供工厂和称为 connection pool 对于这些数据库连接。引擎通常是一个只为特定数据库服务器创建一次的全局对象,并使用一个URL字符串进行配置,该字符串将描述如何连接到数据库主机或后端
阅读全文
摘要:一、SQLAlchemy的介绍 SQLAlchemy 是 Python 生态系统中最流行的 ORM。SQLAlchemy 设计非常优雅,分为了两部分——底层的 Core 和上层的传统 ORM。在 Python 乃至其他语言的大多数 ORM 中,都没有实现很好的分层设计, 比如 django 的 OR
阅读全文
摘要:请求体传参 当你需要将数据从客户端(例如浏览器)发送给API时,你将其作为[请求体] (request body)发送,请求体是客户端发送给API的数据.响应体是API发送给客户端的数据。 class Addr(BaseModel): province: str city: str class Us
阅读全文
摘要:1、URL传参url请求参数是通过url请求地址携带的,例如,在以下 url 中: http://127.0.0.1:8000/items/?1 skip=0&limit=10 这些请求参数是键值对的集合,这些键值对位于 URL 的 ? 之后,并以 & 符号分隔。请求参数为:• skip :对应的值
阅读全文
摘要:Route路由, 是一种映射关系!路由是把客户端请求的url路径与视图函数进行绑定映射的一种关系。• 路径 :是 /• 请求方法:是 get• 函数 :是位于「装饰器」下方的函数(位于 @app.get("/") 下方) # 路径操作装饰器参数 # tags 文档标题 1 from fastapi
阅读全文
摘要:这个接口文档调用了一些css样式和 js脚本,这些脚本是部署在国外的,总之 就是因为这个原因导致我们没法访问了,由此我们需要把这个脚本从网上下载下来,放到本地,把此处调用国外的脚本变成调用我们自己本地的,即可。 1、下载这些国外服务器的资源到一个static目录中 2、复制到项目中 3、修改Fast
阅读全文

浙公网安备 33010602011771号