在sqlalchemy中,我使用经典映射和autoload = True。我想从postgresql查询jsontype的数据。
D:\Python27\lib\site-packages\sqlalchemy\dialects\postgresql\base.py:1706: SAWarning: Did not recognize type 'json' of column 'comm_media_alias'name, format_type, default, notnull, domains, enums, schema)
如何处理这个问题
答案 0 :(得分:2)
PostgreSQL中的JSON
类型是PostgreSQL中相对较新的数据类型,因此SQLAlchemy有only recently added functionality to properly detect it。在这个问题出现时,SQLAlchemy将无法检测到“JSON”列类型,因为这样做依赖于它尚未支持的功能。
SQLAlchemy 0.9于2013年12月30日发布。This version contains support for the PostgreSQL JSON data type,所以我建议升级到此版本并重试。
如果您无法升级(或升级仍然不适合您),您还可以将列类型更改为其他类型(如TEXT)。
另外需要注意的是,这不是一个错误:它是一个警告。我不确定SQLAlchemy在处理JSON
类型的列时实际会尝试做什么,但它最终可能会起作用。