2013-06-03 18 views
5

最近、ActiveAdminをインストールして、アプリケーションを実行しようとしているときにエラーが発生します。それはうまくいきましたが、しばらくアイドリングした後、突然それはありません!私のルートでActiveAdmin - 初期化されていない定数AdminUser

gem 'activeadmin' 

devise_for :admin_users, ActiveAdmin::Devise.config 

    ActiveAdmin.routes(self) 

そして、私のadmin_user.rbで

ActiveAdmin.register AdminUser do  
    index do        
    column :email      
    column :current_sign_in_at   
    column :last_sign_in_at   
    column :sign_in_count    
    default_actions     
    end etc.... 

実行しようとすると、エラー:

私の宝石ファイルで

NameError: uninitialized constant AdminUser 
~/Desktop/Sites/Fleetnation/app/admin/admin_user.rb:1:in `<top (required)>' 
/usr/local/rvm/gems/ruby-1.9.3-p194/gems/activesupport-3.2.11/lib/active_support/inflector/methods.rb:230:in `block in constantize' 
/usr/local/rvm/gems/ruby-1.9.3-p194/gems/activesupport-3.2.11/lib/active_support/inflector/methods.rb:229:in `each' 
/usr/local/rvm/gems/ruby-1.9.3-p194/gems/activesupport-3.2.11/lib/active_support/inflector/methods.rb:229:in `constantize' 
... 

誰でもアイデアがありますか?大変感謝しています。

+0

データベースを移行しましたか? app/models/admin_user.rbは存在しますか? –

+0

Yup ...間違いなく、admin_user.rbファイル(ActiveAdmin.register AdminUserなど)の最初の行でエラーが発生します。これは管理フォルダにあります。 –

+0

いいえ、あなたは一歩足りません。 app/admin/admin_userはダッシュボードですが、実際にはActiveRecord :: Baseオブジェクトであるapp/models/admin_user.rbが必要です。 –

答えて

7

rails serverを再起動してみてください。再起動後に解決した同様の問題がありました。

+0

いいえ...それを修正しない私は恐れている! –

+1

何回この問題に遭遇したとしても、私はいつも新しい宝石をインストールした後にサーバーを再起動することを忘れてしまいます。それから、私はこのような答えを見て、私は覚えています。ありがとう。 –

+0

これは修正だとは思えません。 +1は時々修正が簡単になることを思い出させるためのものです。 –

-2

app/models/admin_user.rbの名前をapp/models/admin_users.rbに変更すると、私に役立ちました。

4

このエラーは、モデルに誤った関連付けがある場合に発生します。アソシエーションを変更したが、モデルのファイルを更新するのを忘れた場合は、このエラーが発生します。

モデルファイルを再度確認してください。アクティブな管理者をローカルに開いて、どのエラーが表示されるかを確認します(localhost:3000/admin)。通常はuninitialized constant MyModel:MyBadAssociationと表示されるため、エラーの診断に役立ちます。

関連する問題