will_paginate方法遇到问题

时间:2019-04-17 10:23:44

标签: ruby-on-rails will-paginate

我正在我的Rails应用程序中尝试使用will_paginate进行分页。我正在关注Michael Hartl撰写的Rails教程。 在我的控制器中,

def index
  @users = User.paginate(page: params[:page])
end

我认为我有

<%= will_paginate %>
<ul class="users">
  <% @users.each do |user| %>
    <li>
      <%= gravatar_for user, size: 50 %>
      <%= link_to user.name, user %>
    </li>
  <% end %>
</ul>
<%= will_paginate %>

它会引发以下错误:will_paginate的参数数量错误(给定0,应为1)

4 个答案:

答案 0 :(得分:2)

有同样的问题。

更改为3.1.7(从Gemfile中的3.1.6)为我修复了该问题。

参考ArgumentError: wrong number of arguments (given 0, expected 1) #589

答案 1 :(得分:2)

我遇到了这个问题,浏览了一段时间以获得解决方案,我得到的确切错误是:

enter image description here

解决方案

转到gemfile,然后将gem 'will_paginate','3.1.6'更改为gem 'will_paginate','3.1.7'

然后去终端并放bundle update

然后分页将起作用

enter image description here

答案 2 :(得分:2)

我在使用不同版本时遇到了同样的问题。

对于我的情况,从 3.1.8 更改为最新版本的 3.3.0 解决了问题。

顺便说一下,我使用的是 Rails 6.1.1

答案 3 :(得分:0)

在 Gemfile 中:gem 'will_paginate', '~> 3.1' 在其他文件中:<%= will_paginate @articles%>