我有以下命名范围:
named_scope :find_all_that_match_tag, lambda { |tags| {
:select => "articles.id, tags.name",
:joins => :tags,
:conditions => ["tags.name IN (?)",tags]}
}
它在脚本/控制台中像这样工作得很好
Article.find_all_that_match_tag(["cooking"])
但是如果我像这样使用它,作为匿名范围的一部分
scope = Article.scoped({})
scope = scope.scoped.find_all_that_match_tag(["cooking"])
我在第二行收到警告:
/Users/Server/.gem/ruby/1.8/gems/activerecord-2.3.4/lib/active_record/named_scope.rb:13: warning: multiple values for a block parameter (0 for 1)
from /Users/Server/.gem/ruby/1.8/gems/activerecord-2.3.4/lib/active_record/named_scope.rb:92
它仍然有效,但是导致警告的原因是什么?我该如何摆脱它?