Release: 1.4.0b1 | Release Date: unreleased

SQLAlchemy 1.4 Documentation

运行时检查API

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

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

原因 inspect() 是双重的。其一,它取代了在SQLAlchemy中需要了解大量“信息获取”功能的需求,例如 Inspector.from_engine()orm.attributes.instance_state()orm.class_mapper() 以及其他。另一个是 inspect() 保证遵守文档化的API,从而允许以一种向前兼容的方式构建在SQLAlchemy配置之上的第三方工具。

sqlalchemy.inspection.inspect(subject, raiseerr=True)

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

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

参数
  • subject -- 受检对象。

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

可用的检查目标

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

Previous: 事件 Next: 不推荐使用的事件接口