我有一个返回json对象的psql查询。我用results.fetchall()
获取此查询,并将json正确地作为dict。
然而,正如我在python 3.4中,还没有在3.6中,对象'命令不会保留在字典中。我看到a way使用OrderedDict
来保持json的顺序,但我不知道如何告诉sqlalchemy / psycopg2使用它。
有人可以帮忙吗?
答案 0 :(得分:3)
如documentation所示,您必须在创建引擎时提供自定义反序列化器:
from functools import partial
import json, collections
engine = create_engine(
...,
json_deserializer=partial(
json.loads,
object_pairs_hook=collections.OrderedDict),
)