我无法弄清楚为什么:per_page限制对surf_school_reviews不起作用。它仍然显示所有的评论,虽然我设置:per_page限制(我只是将其设置为2,这样我就不必创建很多评论只是为了测试它是否有效)。我相信我的所有关联和代码都是正确的,如下所示。但当will_page用于surf_schools时,我没有遇到任何问题。
如果我的描述不清楚,我很抱歉,所以您可以发表评论和澄清,以便我可以向您进一步解释。
surf_schools_controller.rb
def show
@surf_school = SurfSchool.find(params[:id])
@surf_school_reviews = @surf_school.surf_school_reviews.paginate(page: params[:page], per_page: 2)
end
surf_school.rb
belongs_to :user
has_many :surf_school_reviews
surf_school_review.rb
belongs_to :surf_school
belongs_to :user
user.rb
has_many :surf_schools, dependent: :destroy
has_many :surf_school_reviews, dependent: :destroy
的routes.rb
resources :surf_schools do
resources :surf_school_reviews, except: [:index, :show]
end
答案 0 :(得分:0)
您必须在show.html中包含以下代码:
<%= paginate @surf_school_reviews, param_name: 'page' %>
答案 1 :(得分:0)
在你的行动中尝试这样:
@surf_school_reviews = @surf_school.surf_school_reviews.paginate(:page => params[:page], :per_page => 2)
您必须在show.html.erb文件中使用这样的内容。 在div的末尾使用它。
<% unless @surf_school_reviews.blank? %>
<%= will_paginate @surf_school_reviews, renderer:BootstrapPagination::Rails %>
<% end %>