在我的Rails应用程序中,我遍历适合某些标准的Product模型的所有实例,并将它们显示在用户的个人资料页面上。这就是循环的样子:
<% notsold = @user.products.where("sold_value = false").order("created_at DESC") %>
<% notsold.each do |f| %>
<% if f.sold_value === false %>
// do stuff
<% end %>
<% end %>
此视图是用户控制器下的profile.html.erb。我想弄清楚的是如何对创建的数组中的f
或每个产品进行分页。我安装了will_paginate gem。以下是users_controller.rb中的配置文件操作:
def profile
@user = User.find(params[:id])
respond_to do |format|
format.html
end
end
任何人都知道该怎么办?
答案 0 :(得分:0)
你可以像这样在控制器中提供@products
实例变量
@products = @user.products.where("sold_value = false").order("created_at DESC").paginate(:page => params[:page], :per_page => 30)
然后您可以在代码中循环@products
<% @products.each do |f| %>
<% if f.sold_value === false %>
// do stuff
<% end %>
<% end %>