未定义的方法`paginate'用于带有mongoid的Rails 3上的Array

Ask*_*kar 1 pagination will-paginate mongodb ruby-on-rails-3 mongoid3

试图使用will_paginate gem.

我的Gem文件有:

gem 'will_paginate', '~> 3.0.0'
Run Code Online (Sandbox Code Playgroud)

我的orders_controllers.rb:

def index
    @orders = Order.all.paginate(:page => params[:page], :per_page => 20)

    respond_to do |format|
      format.html # index.html.erb
      format.json { render json: @orders }
    end
  end
Run Code Online (Sandbox Code Playgroud)

在我的index.html.erb上我放了:

<%= will_paginate @orders %>
Run Code Online (Sandbox Code Playgroud)

错误:

NoMethodError in OrdersController#index

undefined method `paginate' for #<Array:0x007f79a1be62f8>
Rails.root: /home/askar/Dropbox/rails_studio/somics

Application Trace | Framework Trace | Full Trace
app/controllers/orders_controller.rb:5:in `index'
Run Code Online (Sandbox Code Playgroud)

我现在有kaminari宝石的分页,但我想知道will_paginate.

Kee*_*ema 9

默认情况下禁用数组函数,您必须通过在WillPaginate文件中要求它们来启用它们:

require 'will_paginate/array'
Run Code Online (Sandbox Code Playgroud)