设计:新错误(可加密)

时间:2012-05-16 01:34:55

标签: ruby-on-rails devise

我在一周内没有触及我的代码,但是当我捆绑,然后尝试运行我的网络服务器时,我现在得到以下错误,这让我死在水中。包括错误输出中建议的设计加密gem不能解决问题,仍然会导致相同的错误。非常感谢任何帮助。

[DEVISE] Devise.apply_schema is deprecated and has no effect. Please remove it.


[DEVISE] To select a encryption which isn't bcrypt, you should use devise-encryp
table gem.


[DEVISE] Devise.use_salt_as_remember_token is deprecated and has no effect. Plea
se remove it.

/Users/sa/.rvm/gems/ruby-1.9.2-p290/gems/actionpack-3.2.1/lib/action_d
ispatch/http/mime_type.rb:101: warning: already initialized constant PDF
[DEVISE] You're trying to include :encryptable in your model but it is not bundl
ed with the Devise gem anymore. Please add `devise-encryptable` to your Gemfile 
to proceed.

/Users/sa/.rvm/gems/ruby-1.9.2-p290/gems/devise-2.1.0/lib/devise/model
s.rb:96:in `const_get': uninitialized constant Devise::Models::Encryptable (Name
Error)
        from /Users/sa/.rvm/gems/ruby-1.9.2-p290/gems/devise-2.1.0/lib
/devise/models.rb:96:in `block (2 levels) in devise'
        from /Users/sa/.rvm/gems/ruby-1.9.2-p290/gems/devise-2.1.0/lib
/devise/models.rb:91:in `each'
        from /Users/sa/.rvm/gems/ruby-1.9.2-p290/gems/devise-2.1.0/lib
/devise/models.rb:91:in `block in devise'
        from /Users/sa/.rvm/gems/ruby-1.9.2-p290/gems/devise-2.1.0/lib
/devise/models.rb:122:in `devise_modules_hook!'
        from /Users/sa/.rvm/gems/ruby-1.9.2-p290/gems/devise-2.1.0/lib
/devise/models.rb:89:in `devise'
        from /Users/sa/Documents/AptanaWorkspace/sparkv1/app/models/sa
as_admin.rb:4:in `<class:SaasAdmin>'
        from /Users/sa/Documents/AptanaWorkspace/sparkv1/app/models/sa
as_admin.rb:1:in `<top (required)>'
        from /Users/sa/.rvm/gems/ruby-1.9.2-p290/gems/activesupport-3.
2.1/lib/active_support/inflector/methods.rb:229:in `block in constantize'
        from /Users/sa/.rvm/gems/ruby-1.9.2-p290/gems/activesupport-3.
2.1/lib/active_support/inflector/methods.rb:228:in `each'
        from /Users/sa/.rvm/gems/ruby-1.9.2-p290/gems/activesupport-3.
2.1/lib/active_support/inflector/methods.rb:228:in `constantize'
        from /Users/sa/.rvm/gems/ruby-1.9.2-p290/gems/devise-2.1.0/lib
/devise.rb:252:in `get'
        from /Users/sa/.rvm/gems/ruby-1.9.2-p290/gems/devise-2.1.0/lib
/devise/mapping.rb:77:in `to'
        from /Users/sa/.rvm/gems/ruby-1.9.2-p290/gems/devise-2.1.0/lib
/devise/mapping.rb:72:in `modules'
        from /Users/sa/.rvm/gems/ruby-1.9.2-p290/gems/devise-2.1.0/lib
/devise/mapping.rb:89:in `routes'
        from /Users/sa/.rvm/gems/ruby-1.9.2-p290/gems/devise-2.1.0/lib
/devise/mapping.rb:156:in `default_used_route'
        from /Users/sa/.rvm/gems/ruby-1.9.2-p290/gems/devise-2.1.0/lib
/devise/mapping.rb:66:in `initialize'
        from /Users/sa/.rvm/gems/ruby-1.9.2-p290/gems/devise-2.1.0/lib
/devise.rb:286:in `new'
        from /Users/sa/.rvm/gems/ruby-1.9.2-p290/gems/devise-2.1.0/lib
/devise.rb:286:in `add_mapping'
        from /Users/sa/.rvm/gems/ruby-1.9.2-p290/gems/devise-2.1.0/lib
/devise/rails/routes.rb:207:in `block in devise_for'
        from /Users/sa/.rvm/gems/ruby-1.9.2-p290/gems/devise-2.1.0/lib
/devise/rails/routes.rb:206:in `each'
        from /Users/sa/.rvm/gems/ruby-1.9.2-p290/gems/devise-2.1.0/lib
/devise/rails/routes.rb:206:in `devise_for'
        from /Users/sa/Documents/AptanaWorkspace/sparkv1/config/routes
.rb:8:in `block in <top (required)>'
        from /Users/sa/.rvm/gems/ruby-1.9.2-p290/gems/actionpack-3.2.1
/lib/action_dispatch/routing/route_set.rb:272:in `instance_exec'
        from /Users/sa/.rvm/gems/ruby-1.9.2-p290/gems/actionpack-3.2.1
/lib/action_dispatch/routing/route_set.rb:272:in `eval_block'
        from /Users/sa/.rvm/gems/ruby-1.9.2-p290/gems/actionpack-3.2.1
/lib/action_dispatch/routing/route_set.rb:249:in `draw'
        from /Users/sa/Documents/AptanaWorkspace/sparkv1/config/routes
.rb:7:in `<top (required)>'
        from /Users/sa/.rvm/gems/ruby-1.9.2-p290/gems/railties-3.2.1/l
ib/rails/application/routes_reloader.rb:40:in `block in load_paths'
        from /Users/sa/.rvm/gems/ruby-1.9.2-p290/gems/railties-3.2.1/l
ib/rails/application/routes_reloader.rb:40:in `each'
        from /Users/sa/.rvm/gems/ruby-1.9.2-p290/gems/railties-3.2.1/l
ib/rails/application/routes_reloader.rb:40:in `load_paths'
        from /Users/sa/.rvm/gems/ruby-1.9.2-p290/gems/railties-3.2.1/l
ib/rails/application/routes_reloader.rb:16:in `reload!'
        from /Users/sa/.rvm/gems/ruby-1.9.2-p290/gems/railties-3.2.1/l
ib/rails/application/routes_reloader.rb:26:in `block in updater'
        from /Users/sa/.rvm/gems/ruby-1.9.2-p290/gems/activesupport-3.
2.1/lib/active_support/file_update_checker.rb:78:in `call'
        from /Users/sa/.rvm/gems/ruby-1.9.2-p290/gems/activesupport-3.
2.1/lib/active_support/file_update_checker.rb:78:in `execute'
        from /Users/sa/.rvm/gems/ruby-1.9.2-p290/gems/railties-3.2.1/l
ib/rails/application/routes_reloader.rb:27:in `updater'
        from /Users/sa/.rvm/gems/ruby-1.9.2-p290/gems/railties-3.2.1/l
ib/rails/application/routes_reloader.rb:7:in `execute_if_updated'
        from /Users/sa/.rvm/gems/ruby-1.9.2-p290/gems/railties-3.2.1/l
ib/rails/application/finisher.rb:66:in `block in <module:Finisher>'
        from /Users/sa/.rvm/gems/ruby-1.9.2-p290/gems/railties-3.2.1/l
ib/rails/initializable.rb:30:in `instance_exec'
        from /Users/sa/.rvm/gems/ruby-1.9.2-p290/gems/railties-3.2.1/l
ib/rails/initializable.rb:30:in `run'
        from /Users/sa/.rvm/gems/ruby-1.9.2-p290/gems/railties-3.2.1/l
ib/rails/initializable.rb:55:in `block in run_initializers'
        from /Users/sa/.rvm/gems/ruby-1.9.2-p290/gems/railties-3.2.1/l
ib/rails/initializable.rb:54:in `each'
        from /Users/sa/.rvm/gems/ruby-1.9.2-p290/gems/railties-3.2.1/l
ib/rails/initializable.rb:54:in `run_initializers'
        from /Users/sa/.rvm/gems/ruby-1.9.2-p290/gems/railties-3.2.1/l
ib/rails/application.rb:136:in `initialize!'
        from /Users/sa/.rvm/gems/ruby-1.9.2-p290/gems/railties-3.2.1/l
ib/rails/railtie/configurable.rb:30:in `method_missing'
        from /Users/sa/Documents/AptanaWorkspace/sparkv1/config/enviro
nment.rb:5:in `<top (required)>'
        from /Users/sa/.rvm/gems/ruby-1.9.2-p290/gems/railties-3.2.1/l
ib/rails/application.rb:103:in `require_environment!'
        from /Users/sa/.rvm/gems/ruby-1.9.2-p290/gems/railties-3.2.1/l
ib/rails/commands.rb:25:in `<top (required)>'
        from script/rails:6:in `require'
        from script/rails:6:in `<main>'

1 个答案:

答案 0 :(得分:40)

我遇到了同样的问题。

正如在devise的wiki上所写,你必须在你的Gemfile中添加这一行:

gem'depaise-encryptable'

来自维基:

  

如果您在模型上使用encryptable,则现在必须在gemfile中包含devise-encryptable。

https://github.com/plataformatec/devise/wiki/How-To:-Upgrade-to-Devise-2.1

关于警告:

从devise.rb中删除以下内容:

# Automatically apply schema changes in tableless databases
config.apply_schema = false

# If true, uses the password salt as remember token. This should be turned
# to false if you are not using database authenticatable.
config.use_salt_as_remember_token = true