我创建用于从系统注销的URL:
<li><%= link_to("Выйти", "http://bookworm.az:3000/logout") %></li>
会话控制器破坏操作:
def destroy
session[:username] = nil
redirect_to "http://bookworm.az:3000/login"
end
我的路线是:
get '/logout' => 'sessions#destroy'
但是,当我单击链接时,它会将我重定向到
http://bookworm.az:3000/logout
不去
http://bookworm.az:3000/login
问题是什么?
您的代码违反了Rails约定。您应该改用这个:
view.rb
link_to "Delete", session_path(current_session), method: :delete
您不应该更改route.rb资源。把事情简单化:
routes.rb
resources :sessions
另外,您应该使用Rails从route.rb文件生成的URL帮助程序,而不是使用绝对路径(除非没有其他方法)。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句