设计,无法注销

cec*_*ile 5 devise activeadmin

在Rails应用程序中,我使用设计来管理我的用户和我的链接以销毁会话不再起作用.它正在工作,现在我已经添加了活动管理员,它没有.

我的链接是

<%= link_to "Déconnexion",  destroy_user_session_path, :method => :delete, :class => 'button'  %>
Run Code Online (Sandbox Code Playgroud)

我的routes.rb

devise_for :users, :controllers => { :omniauth_callbacks => "users/omniauth_callbacks"}
Run Code Online (Sandbox Code Playgroud)

我的佣金路线

destroy_user_session DELETE /users/sign_out(.:format)
Run Code Online (Sandbox Code Playgroud)

它试图打开视图/ users/sign_out,所以我有:

ActiveRecord::RecordNotFound in UsersController#show

Couldn't find User with id=sign_out
Run Code Online (Sandbox Code Playgroud)

Active_admin和Devise会崩溃吗?这将是奇怪的'因为积极使用设计,不是吗?

编辑:

对于将遇到此问题的下一个人,我通过将下一行添加到/config/initializers/devise.rb来解决它.

config.sign_out_via = :get
Run Code Online (Sandbox Code Playgroud)

不是最好的方式,但它完成了工作.

Roh*_*wal 0

请更改您的routes.rb:-

devise_scope :users, :controllers => { :omniauth_callbacks => "users/omniauth_callbacks"} do
  get "/users/sign_out", :to => "devise/sessions#destroy"
end
Run Code Online (Sandbox Code Playgroud)

我也遇到了同样的问题,只有这个才能在浪费1小时的时间后解决我。

谢谢。