authlogic和oauth-plugin
-
05-07-2019 - |
题
有人测试了 - authlogic是否适用于oauth-plugin( https://github.com/pelle / oauth-plugin )或不?
解决方案
简短的回答是否。我目前正在将 oauth-plugin 的服务提供商与我自己的auth系统(早于 authlogic , acts_as_authenticated 以及其他所有系统)进行整合。 / p>
oauth-plugin 服务提供商通过生成两个控制器的代码生成器工作,然后将这些控制器绑定到插件中的一些库文件中。所有这些文件都需要 login_required
类方法,其语义与 acts_as_authenticated 使用的语法相同。
authlogic 根本不对您的控制器做任何假设,因此它不会与 oauth-plugin 一起开箱即用,但是该设计决定也意味着它将会以预期的方式构建控制器相当容易。因此,建立一个垫片以支持 oauth-plugin 应该(可能很容易)。
然而在我的情况下,我决定运行生成器,然后从插件中提取我需要的内容并删除插件本身。我这样做的主要原因是我在auth系统中明确没有 login_required
方法,因此我必须修补lib以使其工作。其次,插件中有很多我不需要的东西。第三,大多数真正的库级别的东西已经被抽象到 oauth 宝石本身,所以生活在 oauth-plugin lib目录中的东西就在这里奇怪的是没有勒芒在生成的代码和实际的库之间着陆。
其他提示
我正在努力让它立即发挥作用。我只是使用authlogic方法自己动手来使它很好玩。 (我正在努力让提供商工作,所以authlogic-oauth对我来说似乎不合适)
我会在我去的时候编辑
def logged_in?
return true if current_user
end
def login_required
return true if logged_in?
store_location
redirect_to new_user_session_path and return false
end
Authlogic有一个专门为它开发的附加组件,可以在这里找到