我安装了以下相关宝石:
gem 'spree', github: 'spree/spree', branch: '2-1-stable'
gem 'spree_auth_devise', :git => 'https://github.com/spree/spree_auth_devise.git',
:branch => '2-1-stable'
使用spree_auth_devise的Spree Commerce中的A known problem(?)就是当您在管理页面上单击注销链接时它不起作用。您收到以下错误:
ActionController::RoutingError (No route matches [GET] "/store/user/spree_user
/logout"):
我正在尝试解决此错误。我知道路由[root] / logout工作并提供正确的注销。现在我正在尝试将上述无效的链接重定向到[root] / logout(当您从管理页面执行/ logout get请求时,它工作正常)。 / logout路由到spree/user_sessions#destroy
。
在routes.rb
我尝试添加以下内容:
Spree::Core::Engine.routes.prepend do
get 'user/spree_user/logout', :to => 'spree/user_sessions#destroy'
end
但仍然会出现同样的错误。
如何正确地将路径user / spree_user / logout路由到工作注销操作?
答案 0 :(得分:1)
我在一个项目中遇到了同样的问题,在这个项目中,挖掘它并不符合成本效益。我通过添加重定向来修复它:
match "/store/user/spree_user/logout", :to => redirect('/store/logout')
'store'是你的狂欢根。