设计从1.1.5升级到1.4.5会导致错误的参数数量错误

我刚从Devise 1.1.5升级到1.4.5用于Rails 3.1(1.1.5似乎导致了bcrypt gem版本问题)。

现在user_signed_in? 抛出“错误的参数数量(1对2)”

Stack trace is: devise (1.4.5) lib/devise/models/authenticatable.rb:89:in `serialize_from_session' devise (1.4.5) lib/devise/rails/warden_compat.rb:27:in `deserialize' warden (1.0.5) lib/warden/session_serializer.rb:31:in `fetch' warden (1.0.5) lib/warden/proxy.rb:182:in `user' warden (1.0.5) lib/warden/proxy.rb:278:in `_perform_authentication' warden (1.0.5) lib/warden/proxy.rb:90:in `authenticate' devise (1.4.5) lib/devise/controllers/helpers.rb:48:in `current_user' devise (1.4.5) lib/devise/controllers/helpers.rb:44:in `user_signed_in?' app/controllers/main_controller.rb:24:in `index' actionpack (3.1.0) lib/action_controller/metal/implicit_render.rb:4:in `send_action' actionpack (3.1.0) lib/abstract_controller/base.rb:167:in `process_action' ..... 

有没有经历过这个?

我运行了rake tmp:clear并在session_store.rb更改了我的会话名称

Woodhack::Application.config.session_store :cookie_store, :key => '_NEW_NAME_HERE_session'

您还可以在config / initializers / secret_token.rb中更改一个字符