Mongodb查询说“错误的参数数量(2个为1)”

时间:2011-07-13 00:05:07

标签: ruby-on-rails ruby mongodb mongoid

我的查询很简单,不确定发生了什么:

User.rb

def self.find_house_number(house_number)
  User.where("house_number = ?", house_number)
end

所以称之为:

User.find_house_number("9998883333")

我收到错误:

wrong number of arguments (2 for 1)

有什么想法吗?

1 个答案:

答案 0 :(得分:3)

#where采用条件哈希,而不是类似SQL的字符串。你应该这样做:

User.where(:house_number => house_number)

请注意,MongoDB与SQL无关,因此您不应该假设SQL片段可以正常工作。