轨道上的红宝石 - 分页器显示奇怪的结果.为什么



我正在使用kaminari进行分页。然后我有 3 种模型,例如 UserCommunityUniquecode

我面临着一个问题,其中显示的记录数量在每个参数[:p年龄]上变化(变化)。

另外,如果我输入<% @uniquecode_count %>,它会返回"1"...由于有 3 条相关记录,因此它必须是"3"。

这真的很奇怪。 就我而言。我有相关的 3 条唯一代码记录。
正如我确实在 Uniquecode 模型中放置paginates_per 1一样,它应该在每页上只显示 1 条记录。然而,结果是

  • 在第 1 页显示 3 条记录
  • 在第 2 页显示 2 条记录
  • 在第 3 页显示 1 条记录

为什么要这样做?我从未见过Kaminari这样做。

谁能帮我解决这个问题?

我这样定义关联

User has_many :communities
User has_many :uniquecodes
Community belongs_to :user
Community has_many :uniquecodes
Uniquecode belongs_to :user
Uniquecode belongs_to :community

唯一代码模型

paginates_per 1

控制器

@user = User.find(params[:id])
@uniquecodes = @user.uniquecodes.page(params[:page])
@uniquecodes_count = @uniquecodes.count

视图

<%= paginate @uniquecodes, :window => 4 %>
<% @uniquecodes.recent.each do |uniquecode| %>   
    <%= render 'uniquecodes/uniquecode', :uniquecode => uniquecode %>
<% end %>
<% @uniquecode_count %>  => this shows '1'. It has to show '3' though.

也许你应该为你的唯一代码设置一个默认顺序..?

替换

@uniquecodes = @user.uniquecodes.page(params[:page])

@uniquecodes = Kaminari.paginate_array(@user.uniquecodes).page(params[:page])

相关内容

  • 没有找到相关文章

最新更新