多个设计会话,摧毁其中一个

时间:2016-06-03 08:09:22

标签: ruby-on-rails-4

我正在创建一个rails应用程序,用户(care_giver)可以使用devise登录。在此登录后,用户将获得所有已分配的Fitbit帐户的概览。在这里,CareGiver可以使用omniauth使用其中一个Fitbit帐户登录。但是,当我希望CareGiver退出(销毁)Fitbit会话时,CareGiver总是会在Fitbit会话中退出。

会话销毁后重定向用户

def after_sign_out_path_for(resource_or_scope)
 care_givers_client_overview_path
end

在视图中:

= link_to 'Uitloggen', destroy_care_giver_session_path, class: "", data: { confirm: 'Weet u zeker dat u wilt uitloggen?' }, method: :delete

接收错误:

nil的未定义方法`id':NilClass

def client_overview
  @fitbits = FitbitUser.where(:care_giver_id == current_care_giver.id )
end

我的问题是如何在不实际接触CareGiver会话的情况下摧毁一个会话(Fitbit)。

1 个答案:

答案 0 :(得分:3)

您应该将config.sign_out_all_scopes = false放入devise.rb。设计标准符号所有范围(https://github.com/plataformatec/devise/blob/master/app/controllers/devise/sessions_controller.rb,第26行)。