Как сделать две разбитые на страницы и настраиваемые коллекции в одном представлении?
В индексном представлении Rails 3.2 я отображаю две части.
<%= render :partial => 'users/user', :locals => {:users => @happy_users} %>
<%= render :partial => 'users/user', :locals => {:users => @sad_users} %>
и в частичном
<% users.each do |user| %>
Show some fields
<% end %>
<%= will_paginate users %>
Нумерация страниц не работает.
Если я изменюwill_paginate
чтобы взять переменную экземпляра, нумерация страниц работает (но неправильная коллекция)
<%= will_paginate @users %>
Как я могу передать locals в will_paginate, когда вызывается партиал?
(Я понимаю, что мне также нужно пройти:param_name
чтобы это работало с двумя коллекциями. Сейчас я просто пытаюсь заставить работать один экземпляр.)
Частичное отображается через index.js.erb
$(".ajaxable-users").html('<%= escape_javascript(render("users/user")) %>');
И контроллер выглядит
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
Спасибо за любые идеи.