我应该如何使用 will-paginate 不同大小的列?

how am I supposed to use will-paginate with different sized columns?

我想在 rails 网络应用程序中实现以下目标:

在我的图像中,1 = @article.first, 2 = @article.offset(1).first

例如:

ArticlesController

def index 
  @articles = Article.all.paginate(page: params[:page], per_page: 16)
end

现在我应该如何在视图中实现这种布局?

使用(或不使用)will_paginate(或任何分页,就此而言)与您如何布置视觉元素无关 - 这就是 MVC 架构的全部要点。

调用 paginate 可确保您一次获得一页 16 个结果,页码由 ?page= 参数控制。

元素通常一个接一个地布置,这导致使用 .each:

的编队
@articles.each do |article|
  render 'articles/article', :article => article
end

在您的情况下,您可能需要逐篇甚至按索引访问集合中的文章。 ActiveRecord::Relation 集合支持类似数组的访问,因此要获取 16 个元素中的第一个,您可以使用 articles[0],第二个在 articles[1],一直到第十六个 articles[15].