認証にDeviseを使用して問題なく動作していたアプリケーションがあります。CanCan を追加しましたが、Devise で問題が発生しています。標準の「encrypted_password」および「password_confirmation」属性が attr_accessible として指定されていない場合、コントローラーが実行しようとすると、次のようになります。
@user = User.new(params[:user])
標準の MassAssignment エラーが発生します。しかし、それらを attr_accessible リストに追加すると、ユーザーを作成できますが、attr_accessible が Devise にパスワードを暗号化させないため、パスワードの検証に失敗します。私は両方を持っているので、問題は私のルートにあると思われます:
devise_for :users, :path_prefix => 'secure'
resources :users
リソース :users があるため、管理者は標準の CRUD タイプの操作を使用して CanCan を管理します。
詳細が必要かどうかはわかりませんが、これは私がつま先を突き刺しているコアの問題のように思えます.
ありがとうございました