will_paginate неопределенная ошибка метода - Ruby on Rails - PullRequest
2 голосов
/ 15 апреля 2010

Я просто установил гем для will_paginate, и он говорит, что он был успешно установлен. Я следовал всем инструкциям , перечисленным с плагином, и получаю ошибку 'неопределенный метод `paginate' for '. Не могу найти много в поиске Google и не смог исправить это сам (очевидно). Вот код:

PostsController

def index
    @tag_counts = Tag.count(:group => :tag_name, :order => 'updated_at DESC', :limit => 10)
    @posts = Post.paginate :page => params[:page], :per_page => 50

    respond_to do |format|
      format.html # index.html.erb
      format.xml  { render :xml => @posts }
      format.json { render :json => @posts }
      format.atom
    end
  end

/ модель / post.rb

class Post < ActiveRecord::Base
  validates_presence_of :body, :title
  has_many :comments, :dependent => :destroy
  has_many :tags, :dependent => :destroy

  cattr_reader :per_page
    @@per_page = 10

end

/ сообщений / просмотров / index.html.erb

  <%= will_paginate @posts %>

UPDATE Я использовал скрипт / консоль, чтобы определить, правильно ли был установлен will_paginate и не установлен ли он. Я должен был добавить:

config.gem 'will_paginate', :version => '~> 2.3.11', :source => 'http://gemcutter.org'

в файл /config/environments.rb и перезапустите сервер. Прекрасно работает.

Ответы [ 2 ]

2 голосов
/ 05 ноября 2011

Я столкнулся с неопределенной ошибкой метода с гемом will_paginate (используя Rails 3), потому что я ошибочно разместил. , .

gem 'will_paginate'

. , , команда в неправильном месте в Gemfile. Убедитесь, что он размещен там, где он будет доступен для всех сред выполнения, а не во вложенном пакете для разделенной среды, такой как:

group :test do
.
.
.
end
2 голосов
/ 15 апреля 2010

Я использовал скрипт / консоль, чтобы определить, правильно ли был установлен will_paginate и нет. Я должен был добавить:

config.gem 'will_paginate', :version => '~> 2.3.11', :source => 'http://gemcutter.

прекрасно работает. Простое исправление.

...