设计不退出

时间:2013-02-08 17:19:49

标签: ruby-on-rails-3 devise

我有一个退出的链接。

<a href="http://mydomain.lvh.me:3000/users/sign_out" data-method="delete" rel="nofollow">
    Sign Out
</a>

正确执行退出操作:

Started DELETE "/users/sign_out" for 127.0.0.1 at 2013-02-08 15:04:06 -0200
Processing by DeviseCustom::SessionsController#destroy as HTML
  Parameters: {"authenticity_token"=>"WYMm9e4VMNgdDFXbl59TKyylhX+rZlWbWMF8lVEeves="}
  User Load (0.2ms)  SELECT `users`.* FROM `users` WHERE `users`.`id` = 150 LIMIT 1
   (0.1ms)  BEGIN
   (0.2ms)  COMMIT
Redirected to http://mydomain.lvh.me:3000/
Completed 302 Found in 4ms (ActiveRecord: 0.5ms)

我正在定制SessionsController,但我没有重新定义destroy动作。

class DeviseCustom::SessionsController < Devise::SessionsController
  respond_to :html, :js
  layout :false
  def create
    <MYCUSTOMCONTENT>
  end
end

但是在完成所有这些之后,current_user仍然保存已登录用户的信息。 有什么帮助吗?

1 个答案:

答案 0 :(得分:1)

确保您已在布局中包含默认的javascript文件。应该有一句话:

<%= javascript_include_tag :defaults %>

在您的布局中。

需要通过GET注销然后将其添加到您的

配置/初始化/ devise.rb:

config.sign_out_via = :get