【发布时间】:2013-06-25 15:27:18
【问题描述】:
我有一个奇怪的问题...在与模型兴趣无关的模型用户中,我尝试调用此查询:
# file model.rb
def self.my_func
Interest.where('id IN (?)', [1,2])
end
但它完全被忽略了......如果我用这个代替:
# file model.rb
def self.my_func
Interest.find(1)
end
.find() 方法被触发,我得到了结果。
如果我直接在rails console 中调用Interest.where('id IN (?)', [1,2]) 就可以了...
我在 RoR 3.2.13
有什么想法吗? 谢谢大家。
【问题讨论】:
-
您是在迭代或调用
#to_a对抗my_func? -
my_func 返回什么?我不明白“完全忽略”。
-
你对函数的结果做什么?
-
忽略我的意思是在控制台中,我根本看不到查询。如果我调用 .find() 而不是 .where() (在相同的上下文中),我会在控制台中看到查询。
标签: ruby-on-rails activerecord ruby-on-rails-3.2