2014-05-12 14 views

Trả lời

18

Nếu bạn đang sử dụng Postgres như cơ sở dữ liệu và cột thực sự là một loại json, bạn có thể sử dụng tìm kiếm trong Rails như sau:

LogService.where("response_body#>>'{status}' = 'ok'") 

# này sẽ đi qua đường dẫn json và thực hiện tìm kiếm. Nếu bạn chỉ sử dụng #> (chỉ với một>), nó sẽ trả về json remaing.

Một ví dụ khác, nếu bạn muốn để có được những "c" => "ok"

LogService.where("response_body#>>'{um, b, c}' = 'ok'") 

Tôi nghĩ that's nó.

+0

Điều này thực sự hữu ích. Cảm ơn vì điều đó. –

+0

tìm kiếm một thời gian cho điều này .... vàng. – cubsker

Các vấn đề liên quan