2012年7月26日木曜日

Ruby on Rails3でActive Adminを使ったページングエラーの対処

Active Adminでページングエラーが発生したのでメモ。

環境はruby-1.9.3-p0, rails3.2.2, postgresです。

難易度★★★☆☆

Active Adminは、デフォルトでkaminariを使ってページング処理を利用しています。私のアプリではページング処理にwill_paginateを利用していたので以下のエラーが発生しました。

undefined method 'per' for ##<ActiveRecord::Relation:0x007feba7775fe8#>

methodが定義されていないと警告されています。なので、kaminariを導入します。

Gemfileに記述


vi Gemfile

gem 'kaminari'

bundle install

gemを確認します。


gem list

kaminari (0.13.0)
...
will_paginate (3.0.pre4)

will_paginateとkaminariが両方入ったことになります。
しかしこのままでは動きません。config/initializers/kaminari.rbを作成し、以下の記述を行います。

kaminari.rb


Kaminari.configure do |config|
  config.page_method_name = :per_page_kaminari
end

あとはサーバーを再起動すれば動くはずです。

Active Adminは、管理画面を作成するのに本当に便利です。是非、使ってみてください。

以上です。


参考サイト

この記事がお役にたちましたらシェアをお願いします

このエントリーをはてなブックマークに追加

0 件のコメント:

コメントを投稿

Related Posts Plugin for WordPress, Blogger...