【发布时间】:2020-04-29 08:54:55
【问题描述】:
我在尝试注销用户时遇到错误。显示和删除用户工作正常。我明白了:
NoMethodError in Users#show.
undefined method `email' for nil:NilClass
我注意到的另一个奇怪的事情是传递的参数
Parameters: {"id"=>"sign_out"}
我的看法:
- if user_signed_in?
= link_to destroy_user_session_path, class: "nav-link", :action => 'go' do
.nav-icon.icon-logout
.lock
= image_tag("icons/logout.png")
.unlock
= image_tag("icons/logout-hover.png")
Logout
- else
= link_to new_user_session_path, class: "nav-link", :action => 'go' do
.nav-icon.icon-login
.lock
= image_tag("icons/login.png")
.unlock
= image_tag("icons/login-hover.png")
Login
我的路线:
devise_for :users
resources :users, :only =>[:show]
match '/users', to: 'users#index', via: 'get'
match '/users/:id', to: 'users#show', via: 'get'
match '/users/:id' => 'users#destroy', :via => :delete
【问题讨论】:
标签: ruby-on-rails devise routes