ruby-on-rails - 在 Rails 中查看用户通过 Facebook 注册的天气
问题描述
我使用了omniauth-facebook gem。想要查找用户是否使用 facebook 提供商登录的天气。
我的代码
def sign_in_user_and_redirect(user, identity_id)
UserIdentity.increment_counter(:sign_in_count, identity_id)
user.link_browser_id cookies.signed[:uuid]
sign_in_and_redirect user
session['devise.user_attributes'] = user.attributes
end
如何查找用户会话是使用 facebook 登录还是普通用户。
解决方案
`def sign_in_user_and_redirect(user, identity_id)
UserIdentity.increment_counter(:sign_in_count, identity_id)
user.link_browser_id cookies.signed[:uuid]
sign_in_and_redirect user
session[:logged_in_using_omniauth] = true
end`
添加了助手 user_helper.rb
`def logged_in_using_omniauth?
session[:logged_in_using_omniauth].present?
end`
用法
`unless logged_in_using_omniauth?`
推荐阅读
- python - 获取标签TD之间的值(python)
- javascript - 运行反应应用程序时出现类型错误,TypeError: instance.render is not a function
- reactjs - 如何使用 react.js 解决 Material UI 中的垂直选项卡问题?
- javascript - 如何根据平均评分填写评论图标?
- php - 如果 FilesMatch 到位,基本身份验证不起作用
- reactivesearch - RangeSlider 组件支持自定义区间范围
- django - Django ORM .values() 无法正常工作
- java - Ambari-metrics-collector 服务未启动
- python - python中二维数组/矩阵到二维数组的列表
- android - 如何更改微调器的数组源?(安卓工作室)