【发布时间】:2011-03-11 21:32:19
【问题描述】:
我为我的模型 Link 编写了一个搜索方法。
在实施投票之前,我已经能够毫无错误地调用此方法。例如,这些都有效:
Link.search(params[:search])
current_user.links.search(params[:search])
current_account.links.search(params[:search])
以下不起作用:
@links = current_user.votes.collect {|vote| vote.voteable}
@favorites = @links.search(params[:search])
并返回此错误:
undefined method `search' for #<Array:0x00000006919ac8>
我已经在控制台中进行了一些测试,看看我的班级是否有误:
links = user.votes.map {|vote| vote.voteable}
links.class
=> Array
links.first.class
=> Link
这应该与我的工作示例没有什么不同:
user.links.class
=> Array
user.links.first.class
=> Link
我认为错误可能是我在数组上调用搜索而不是链接造成的。但在前面的示例中,我也在数组上调用它。
我正在使用 vote_fu 来处理投票,因此投票/可投票。
【问题讨论】:
标签: ruby-on-rails arrays ruby-on-rails-3 activerecord