是否可以使用datamapper进行“where in”查询?

时间:2012-10-15 13:48:05

标签: ruby ruby-datamapper

我想获得一个与datamapper中指定ID匹配的对象列表。

我知道我可以使用多个“”条件,但id的列表可以是数百个。

是否有datamapper命令等同于以下sql?

select * from table where id in (1,2,3,4,5)

1 个答案:

答案 0 :(得分:10)

你可以!它看起来像这样:

users = User.all(:id => [1,2,3])

编辑:你可以在github page for dm-core

上看到这一点
  # If the value of a pair is an Array, we do an IN-clause for you.
  Person.all(:name.like => 'S%', :id => [ 1, 2, 3, 4, 5 ])

  # Does a NOT IN () clause for you.
  Person.all(:name.not => [ 'bob', 'rick', 'steve' ])