人力検索はてな
モバイル版を表示しています。PC版はこちら
i-mobile

Rails3 の質問です。
Rails3でページネートをする為に kaminari というライブラリを gem でインストールしました。ところが、undefined method 'page' for #<ActiveRecord::Relation:0x...>とエラーが出てしまいます。
(試しに、自分のPCのRailsでkaminariをいれてlocalhostで試すと、ちゃんとページネートされますのでソース自体は合っていると思います。)

開発の途中でgem をupdateしてしまったのでそれが遠因になっているのではと疑っております。
以前も、gem list をみるとインストールされているのにRailsで使えないということがありました。
(どうやって解決したのか忘れてしまいました。。。)

gem env をすると、
RubyGems Environment:
- RUBYGEMS VERSION: 1.8.5
- RUBY VERSION: 1.9.2 (2011-02-18 patchlevel 180) [x86_64-linux]
- INSTALLATION DIRECTORY: /usr/local/ruby-1.9.2-p180/lib/ruby/gems/1.9.1
- RUBY EXECUTABLE: /usr/local/ruby-1.9.2-p180/bin/ruby
- EXECUTABLE DIRECTORY: /usr/local/ruby-1.9.2-p180/bin
- RUBYGEMS PLATFORMS:
- ruby
- x86_64-linux
- GEM PATHS:
- /usr/local/ruby-1.9.2-p180/lib/ruby/gems/1.9.1
- /home/flxsrv50/.gem/ruby/1.9.1

とでます。
この環境と、Rails3が読み込んでいる環境が違うのでしょうか?
どなたかお教え願えませんでしょうか?

●質問者: hayaiee
●カテゴリ:コンピュータ ウェブ制作
✍キーワード:gem HOME LIB Linux localhost
○ 状態 :終了
└ 回答数 : 2/2件

▽最新の回答へ

1 ● じゅぴたー
●150ポイント

>開発の途中でgem をupdateしてしまったのでそれが遠因になっているのではと疑っております

やってはいけないことなので、お察しの通り、これが原因でしょう。


ローカルのgemのバージョンを調べて、同じバージョンにダウングレードしてみてください。

ダウングレード手順は「RubyGems 1.5 が出たけど」の通りです。

◎質問者からの返答

ご返信ありがとうございます!

早速試してみます。


2 ● nuna
●150ポイント

Rails3 は Gemfile.lock に記述された gem だけ使いますので、

そのあたりがおかしくなってるのかもしれません。

1. Gemfile.lock を一旦削除

2. Gemfile に gem 'kaminari' と記述(していなければ)

3. bundle install

4. bundle list して kaminari が表示されれば OK

関連質問


●質問をもっと探す●



0.人力検索はてなトップ
8.このページを友達に紹介
9.このページの先頭へ
対応機種一覧
お問い合わせ
ヘルプ/お知らせ
ログイン
無料ユーザー登録
はてなトップ