Создание именованных маршрутов для OmniAuth в Rails 3

После просмотра отличного Railcast Simple OmniAuth Райана мне удалось реализовать аутентификацию в моем app.

Все работает нормально, но, на мой взгляд, у меня есть ссылки, которые выглядят следующим образом:

<%= link_to 'Sign in with Twitter', '/signin/twitter' %>
<%= link_to 'Sign in with Facebook', '/signin/facebook' %>

Мне было интересно, есть ли элегантный способ создать именованный маршрут, чтобы заменить его на:

<%= link_to 'Sign in with Twitter', signin_twitter_path %>
<%= link_to 'Sign in with Facebook', signin_facebook_path %>

или:

<%= link_to 'Sign in with Twitter', signin_path(:twitter) %>
<%= link_to 'Sign in with Facebook', signin_path(:facebook) %>

OmniAuth уже обрабатывает эти маршруты ... В моих маршрутах. rb файл. У меня есть материалы только для обратных вызовов и выхода из системы:

match '/signin/:provider/callback' => 'sessions#create'
match '/signout' => 'sessions#destroy', :as => :signout

Поэтому я не знаю, где я могу создать эти названные маршруты.

Любая помощь будет принята с благодарностью. Спасибо.

10
задан BryanH 22 June 2011 в 12:34
поделиться