Pol*_*her 3 ruby-on-rails devise
尝试使用设计范围重新定义会话路由时收到错误.
devise_for :users
devise_scope :users do
get '/login' => 'devise/sessions#new', as: :new_user_session
post '/login' => 'devise/sessions#create', as: :user_session
delete '/logout' => 'devise/sessions#destroy', as: :destroy_user_session
end
Run Code Online (Sandbox Code Playgroud)
错误.
Invalid route name, already in use: 'new_user_session' You may have defined two routes with the same name using the `:as` option, or you may be overriding a route already defined by a resource with the same naming. For the latter, you can restrict the routes
我理解这个错误并不是为什么会发生这种错误.范围不会重新定义为new_user_session吗?
此外,如果您按照wiki进行操作,您将获得一个设备弃用警告,用于传递块. https://github.com/plataformatec/devise/wiki/How-To:-Change-the-default-sign_in-and-sign_out-routes
我有同样的问题。如果你注意devise_scopemodel 必须是单数和devise_for复数。所以解决办法是:
devise_for :users
devise_scope :user do
...
end
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
7143 次 |
| 最近记录: |