我有一个jsonb
类型的metadata
列。
我知道如何检查它是否包含特定的密钥:
obj = Model.create
obj.metadata = {"foo"=>"1", "bar"=>{"baz"=>{"qux"=>2}}}
obj.save
Model.where("(metadata->'bar') IS NOT NULL") # returns obj
我想知道,如何检查obj.metadata['bar']
中是否有baz
键,如果有,如何检查更深的嵌套键?
我有一个jsonb
类型的metadata
列。
我知道如何检查它是否包含特定的密钥:
obj = Model.create
obj.metadata = {"foo"=>"1", "bar"=>{"baz"=>{"qux"=>2}}}
obj.save
Model.where("(metadata->'bar') IS NOT NULL") # returns obj
我想知道,如何检查obj.metadata['bar']
中是否有baz
键,如果有,如何检查更深的嵌套键?
1条答案
按热度按时间lymnna711#
好吧,只是找到了一个办法:
如果元数据具有更多嵌套JSON:
我想看看,如果
there's metadata['bar']['baz']['qux']
: