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