【发布时间】:2011-12-05 06:59:11
【问题描述】:
我有一个用户模型和图像模型,并且有 has_many 关系。 我在图像表中有 18 条记录。现在的事情是:
@images = @user.images.paginate(:page => params[:page],:per_page=> 12)
p @images.count //output is always 18
图像数量为 18,始终
第一页是 18,然后第二页又是 18。为什么会这样?第一页应该是 12,第二页应该是 6。
PS:它只显示 12 和 6 条记录,但计数器不正确。我只想获取该页面上的记录数。基本上对于最后一页(考虑按 id DESC 排序)计数器我从 1 到 12 不等,我对那个计数器感兴趣。
【问题讨论】:
-
我怀疑您可能在
belongs_to :user上定义了一个counter_cache,它正在缓存此计数。虽然没有确切的想法。
标签: ruby-on-rails ruby-on-rails-3 pagination will-paginate