我的记录中属性的 json 如下所示:
{ foo: bar,
foo1: [{key1: value, key2: value},
{key1: value, key2: value}]
}
我可以使用
Model.where("attribute->>'foo' = ?", "bar")
在查询 key1 和 key2 中的值时遇到一些问题
看看这里 postrgeSQL
您可以使用此运算符#>>
来执行所需的操作,如链接所示"将指定路径处的 JSON 对象作为文本获取",例如:
'{"a":[1,2,3],"b":[4,5,6]}'::json#>>'{a,2}'
Model.where("attribute#>>'{foo1, key1}' = ?", "bar")
你现在应该适应你的需求。希望它有帮助!