Release: 1.4.25 | Release Date: September 22, 2021

SQLAlchemy 1.4 Documentation

运行时检查API

检查模块提供 inspect() 函数,它提供有关各种SQLAlchemy对象的运行时信息,包括核心和ORM中的这些对象。

这个 inspect() 函数是SQLAlchemy公共API的入口点,用于查看内存中对象的配置和构造。取决于传递给的对象的类型 inspect() 返回值要么是提供已知接口的相关对象,要么在许多情况下返回对象本身。

其基本原理是 inspect() 是双重的。其一是它不再需要了解SQLAlChemy中的各种“信息获取”函数,例如 Inspector.from_engine() (1.4中已弃用), instance_state()class_mapper() ,以及其他。另一种是,它的返回值 inspect() 保证遵守记录在案的API,从而允许以向前兼容的方式构建构建在SQLAlChemy配置之上的第三方工具。

Object Name Description

inspect(subject[, raiseerr])

为给定目标生成检验对象。

function sqlalchemy.inspect(subject, raiseerr=True)

为给定目标生成检验对象。

在某些情况下,返回的值可能与给定的对象相同,例如 Mapper 对象已传递。在其他情况下,它将是给定对象的注册检验类型的实例,例如 Engine 通过,一个 Inspector 返回对象。

参数
  • subject -- 受检对象。

  • raiseerr -- 什么时候? True ,如果给定的主题与已知的SQLAlchemy检查类型不对应, sqlalchemy.exc.NoInspectionAvailable 提高了。如果 FalseNone 返回。

可用的检查目标

下面列出了许多最常见的检查目标。

Previous: 事件 Next: 核心异常