我将sqlalchemy与反射结合使用,我的数据库中的几个部分索引使其转储如下警告:

SAWarning: Predicate of partial index i_some_index ignored during reflection

把我的日志(log)弄得乱七八糟.它不会妨碍我的应用程序行为.我希望在开发时保留这些警告,但不是在生产级别.有人知道怎么关掉吗?

推荐答案

Python's warning module提供了一个方便的context manager,可以为您捕捉警告.

下面是如何过滤掉SQLAlchemy警告.

import warnings
from sqlalchemy import exc as sa_exc

with warnings.catch_warnings():
    warnings.simplefilter("ignore", category=sa_exc.SAWarning)
    # code here...

至于开发与生产,您可以在应用程序的入口点或在生产环境中调用应用程序的外部脚本周围使用此警告.

通常,我通过使用一个环境变量来解决这个问题,该变量执行的代码路径与开发时略有不同,例如,围绕不同的中间件等.

Postgresql相关问答推荐

在postgres中查找多个表中不同列的计数和总和

将XML解析从T-SQL迁移到Postgres时出现问题

右连接 postgresql 出现语法错误

为什么我的唯一索引在 Postgresql 中不起作用?

即使存在 GIN 索引,整理默认的类似查询也无法执行

如何使 Postgres 优化引擎具有确定性

我在try 访问我的数据库表时在 postgresql 中收到 aclcheck_error 错误

PostgreSql maintenance_work_mem 在索引创建期间增加

pgadmin db 限制服务器属性不起作用

并行取消嵌套多个数组

是否可以使用 pgAdmin4 自动格式化/美化 SQL 查询?

我可以使用 Rails 将数组存储在 hstore 中吗

保存 geodjango PointField 时出错

postgresql 在查询中插入空值

为 Django Postgres 连接强制 SSL

Postgres Npgsql 连接池

在 PostgreSQL 中 Select 进入临时表?

pg_restore 会覆盖现有的表吗?

postgresql DB中唯一键的正确数据类型是什么?

postgresql NOT ILIKE 子句不包含空字符串值