我已将Omniauth添加到我的rails 3.1项目中,一切正常。当我访问hostname/auth/facebook
时,我被带到了一个页面,我可以按照您的预期授权访问我的Facebook帐户。
我想知道我是否可以命名这条路线,以便在link_to
帮助者中我能写出来
<%= link_to 'Login with Facebook', facebook_login_path %>
而不是
<%= link_to 'Login with Facebook', '/auth/facebook' %>
我知道这不是一件大事,但我喜欢这种一致性。
答案 0 :(得分:3)
通常你会这样做:在routes.rb文件中:
get "auth/facebook", :to => "controller#action", :as => "facebook_login"
但在这种情况下,您发送到的网址实际上并不是您的应用程序的URL部分 - 而是Facebook的oauth网址。因此,您无法为其创建路线。
你能做的唯一事情 - 比如上面指出的评论者 - 就是在你的一个帮助文件中创建一个帮助方法 - 比如app / helpers / application_helper.rb
def facebook_login_path
"/auth/facebook"
end