不能使用sqlchemy查询json列



我试图查询与flask-sqlalchemy在postgresql json列。这是我的代码

house_ = House()
results = house_.query.filter(
            House.information['branch_name'].astext == 'release0'
            ).all()

我不知道怎么了。我试着用.cast(Unicode)代替astext

出现如下错误:

NotImplementedError: Operator 'getitem' is not supported on this expression

您应该在查询中使用'op'方法,如下所示:

Session.query(Model).filter(Model.json_field.op('->')('KEY') == VALUE) 

还可以使用->> JSON操作符将值自动转换为文本。此外,您可以阅读更多关于Postgresql JSON(B)操作符的信息:)

最新更新