当某些东西存储为数组时,Rails where子句

Jmo*_*hey 5 sql arrays postgresql activerecord ruby-on-rails

我正在使用PG数据库运行rails 4.2.

我有一个存储在数据库中的项目,如(model Item):

:something => ["1", "2", "3"]
Run Code Online (Sandbox Code Playgroud)

我想得到 Item.where(:something.include? => "3")

显然这不起作用 - 但是你打算如何在铁轨中做到这一点?

pot*_*hin 6

根据文档,这样的事情应该工作:

Item.where('something @> ARRAY[?]::varchar[]', ['3'])
Run Code Online (Sandbox Code Playgroud)