1

Devise を使用して新しい Rails アプリ (3.2.8) を作成しました。すべてが適切にセットアップされ、アプリが起動し、登録とログインができます。

devise_openid_authenticatable次に、私が理解しているのは、デバイスでの OpenID 統合に使用する宝石であると付け加えました。https://github.com/nbudin/devise_openid_authenticatableの指示に従いました

しかし、rake db:migrate を実行しようとすると、次のエラーが発生します。

rake aborted!
uninitialized constant Devise::Schema

実行するrails sと取得します

/Users/me/.rvm/gems/ruby-1.9.3-p0/gems/devise_openid_authenticatable-1.0.0/lib/devise_openid_authenticatable/schema.rb:1:in `<top (required)>': uninitialized constant Devise::Schema (NameError)
from /Users/me/.rvm/gems/ruby-1.9.3-p0/gems/devise_openid_authenticatable-1.0.0/lib/devise_openid_authenticatable.rb:3:in `<top (required)>'
from /Users/me/.rvm/gems/ruby-1.9.3-p0/gems/bundler-1.0.21/lib/bundler/runtime.rb:68:in `require'
from /Users/me/.rvm/gems/ruby-1.9.3-p0/gems/bundler-1.0.21/lib/bundler/runtime.rb:68:in `block (2 levels) in require'
from /Users/me/.rvm/gems/ruby-1.9.3-p0/gems/bundler-1.0.21/lib/bundler/runtime.rb:66:in `each'

私のGemfileは次のようになります(最後の2行):

gem 'devise'
gem 'devise_openid_authenticatable'

User モデルは次のようになります。

class User < ActiveRecord::Base
    devise :database_authenticatable, :registerable, :recoverable, :rememberable, :trackable, :validatable, :confirmable, :timeoutable, :openid_authenticatable
    attr_accessible :email, :password, :password_confirmation, :remember_me
end

エラーを解決するには?

4

1 に答える 1

0

このdevise_openid_authenticatable宝石は、現在のバージョンの Devise で動作するように維持および更新されているようには見えません。

宝石の宝石仕様から:

gem.add_dependency "devise", "~> 1.3"

これは、Devise の 1.x バージョンでのみ動作することを意味します。代わりに、よりよく維持されている新しいものを使用すると、運が良くなる可能性があると思います. Devise Wiki のこのページに目を通すと、探しているものが見つかるかもしれません。 https://github.com/plataformatec/devise/wiki/OmniAuth%3A-概要

于 2012-08-20T14:17:18.853 に答える