Rails 5地理位置,并清除



我目前正在使用清除验证。作为登录过程的一部分,我想确保我有一个用户的位置(存储在会话中)。

我的问题是如何在清除范围内做到这一点?理想情况下,我只想在登录时执行查找(以节省网络流量/API调用)。如果我找不到用户,那么我将拒绝登录。

我正在考虑使用警卫,但我似乎无法访问request.ipsession,这有点不合时宜。我还试图避免重定向到仅进行地理位置然后再次重定向的URL。

任何人都有关于如何使这项工作的好模型的想法?谢谢!

守卫中的符号主要用于预防或允许登录的过程。我认为它们在这里不合适。对于此用例,我建议覆盖sign_in,通常将其混合到ApplicationController

def sign_in(user, &block)
  super
  if signed_in?
    UserGeocoder.call(current_user)
  end
end

相关内容

  • 没有找到相关文章

最新更新