简体   繁体   中英

rails searchlogic and will_paginate undefined method `order' for #<WillPaginate::Collection:0x37530ac>

Does anyone have the same problem or a working solution? I get always this error message, here are model, controller and view code

class Profile < ActiveRecord::Base
  cattr_reader :per_page
    @@per_page = 10
end

def index
   @search = Profile.search(params[:search])
    @profiles = @search.paginate(:page => params[:page])
  end

<%= will_paginate order @profiles , :by => :created_at, :as => "name" %>

please help, thanks in advance

You are getting this error because the first parameter that should be passed to the will_paginate view helper method is the collection you want to paginate:

<%= will_paginate @profiles %>

—whereas searchlogic's order helper method returns a link, not a collection. You probably want to do this:

<%= order @profiles, :by => :created_at, :as => 'name' %>
<%= will_paginate @profiles %>

I'm not sure if it will work as intended, I haven't tried it.

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM