Jak renderować dwie kolekcje stronicowane i podlegające ajaxowi w tym samym widoku?
W widoku indeksu Rails 3.2 renderuję dwa fragmenty.
<%= render :partial => 'users/user', :locals => {:users => @happy_users} %>
<%= render :partial => 'users/user', :locals => {:users => @sad_users} %>
iw częściowym
<% users.each do |user| %>
Show some fields
<% end %>
<%= will_paginate users %>
Paginacja nie działa.
Jeśli się zmienięwill_paginate
aby wziąć zmienną instancji, działa paginacja (ale niewłaściwa kolekcja)
<%= will_paginate @users %>
Jak mogę przekazać mieszkańcom, aby zmienili się, gdy zostanie wywołana część?
(Zdaję sobie sprawę, że również będę musiał przejść:param_name
aby to działało z dwiema kolekcjami. Na razie próbuję tylko uruchomić jedną instancję.)
Częściowe jest renderowane przez index.js.erb
$(".ajaxable-users").html('<%= escape_javascript(render("users/user")) %>');
A kontroler wygląda tak
def index
@users = User.scoped.paginate(:page => params[:page], :per_page => 5)
@happy_users = User.happy_scope.paginate(:page => params[:page], :per_page => 5)
@sad_users = User.happy_scope.paginate(:page => params[:page], :per_page => 5)
respond_to do |format|
format.html # index.html.erb
format.xml { render :xml => @users }
format.json { render :json => @users }
format.js
end
end
Dzięki za wszelkie pomysły.