Ransack:未定义的方法"结果"

时间:2013-10-07 14:07:28

标签: ruby-on-rails ruby ruby-on-rails-3 ruby-on-rails-3.2 ransack

我需要使用Ransack并安装gem并重新启动服务器,然后在控制器中输入:

  

def index

  @q = Sound.search(params[:q])
      @sounds = @q.result
     

在我看来:

  
    <%= f.label :title_cont %>
    <%= f.text_field :title_cont %>


    <%= f.submit "Search" %>

但我有这个错误:

#ActiveRecord :: Relation的未定义方法`result':0x007fa185e9c2c0&gt;

我试着找到答案,但一切都行不通。

感谢您的帮助

编辑: 我找到了解决方案,我使用了另一个宝石:太阳黑子和那个工作。

感谢所有人的帮助。

1 个答案:

答案 0 :(得分:3)

我刚遇到同样的问题。

我在这里找到了解决方案 https://github.com/activerecord-hackery/ransack/issues/266

我改变了

@q = Sound.search(params[:q])
@sounds = @q.result

@q = Sound.ransack(params[:q])
@sounds = @q.result

我认为ActiveAdmin已经覆盖了我的搜索方法,因此,如上面的链接所述,已经创建了搜索方法以运行搜索,以防其他gem使用&#39;搜索&#39;。