我已经一周没有碰过我的代码了,但是当我捆绑并尝试运行我的网络服务器时,我现在收到以下错误,这让我死在了水里。按照错误输出中的建议包含可设计加密的 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>'
我刚刚遇到了同样的问题。
正如 devise 的 wiki 上所写,您必须在 Gemfile 中添加这一行:
gem '可加密的'
来自维基:
如果您在模型上使用 encryptable,那么您现在必须在 gemfile 中包含 devise-encryptable。
https://github.com/plataformatec/devise/wiki/How-To:-Upgrade-to-Devise-2.1 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
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)