重要なお知らせ

「教えて! goo」は2025年9月17日(水)をもちまして、サービスを終了いたします。詳細はこちら>

【GOLF me!】初月無料お試し

Rails3.2.9でのpaginateがうまくいきません。
分かる方、御教示ください。

今のところ、下記の状態です。
(1)Ruby193/lib/ruby/gems/1.9.1/gemsの下に、mislav-will_paginate-2.3.11
 をインストールした。

(2)Ruby193/rails/demand/Gemfileに
gem 'mislav-will_paginate', '~> 2.3'
を追加した。

(3)コマンドプロンプトで、>bundle installを実行
Using mislav-will_paginate (2.3.11)となっていることを確認

(4)app/controller/demandapps_controller.rb
のdef indexの@demandapps = Demandapp.allを
@demandapps = Demandapp.paginate(:page => params[:page], :per_page => 15)
に変更

(5)app/views/demandappsのindex.html.erbの
<table>~</table>の下に
<%= will_paginate(@items) %>
を追加。

この状態でWEBrickを動かすと、
NoMethodError in DemandappsController#index
undefined method `paginate' for #<Class:0x3c0a218>
app/controllers/demandapps_controller.rb:5:in `index'

のエラーが出ます。paginateが認識されていないようなのですが、
この他にどこか設定しないといけない個所とかあるのでしょうか?

よろしくお願い致します。

A 回答 (1件)

現在pagenateが動いているものがありますので、確認してみました。


Scientific Linux 6でRuby1.8.7、rails 3.2.11ですので参考にならないかも知れませんが、とりあえず
質問欄の番号に合わせています
1) rubygemsでインストール
will_paginate (3.0.4)

2) Gemfileの最後に
gem 'will_paginate'
を追加

3) sudo bundle installを実行

4) controllerのindexの記述
def index
@pdbs = Pdb.paginate( :page => params[:page],
:per_page => 30,
:order => "entry_id ASC")
respond_to do |format|
format.html # index.html.erb
format.json { render :json => @pdbs }
end
end
以下はjsonで保存しているものがあるので記述しているような記憶が?? 曖昧です
indexしかpaginateは使っていません

5) index.html.erb
<table>~</table>の下に
<p><%= will_paginate @entry_id %></p>

以上で正常に動いています。
    • good
    • 0
この回答へのお礼

Railsでのpaginateの方法(3)にも書きました。

お礼日時:2013/01/15 18:20

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!