【发布时间】:2013-08-12 14:44:55
【问题描述】:
def create
auth = request.env["omniauth.auth"]
user = User.find_by_provider_and_uid(auth["provider"], auth["uid"]) || User.create_with_omniauth(auth)
session[:user_id] = user.id
redirect_to root_url, :notice => "Signed in!"
end
def destroy
session[:user_id] = nil
redirect_to root_url, :notice => "Signed out!"
end
在 application.html.erb 中
<%= link_to "Sign out", sessions_destroy_path, :method => :delete %>
我在这里使用了 devise 和omniauth 身份验证。
上述创建方法将在我的用户表中创建新的 twitter 用户或 facebook 用户。 destroy 方法将销毁已登录用户的会话,但不会从 twitter 或 facebook 帐户退出。
当要求退出时,我必须退出 twitter 或 facebook 帐户。 我该怎么做?
【问题讨论】:
标签: facebook ruby-on-rails-3 session twitter omniauth