Разрешить только определенные маршруты в режиме проверки подлинности

Я использую Devise omniauth для аутентификации пользователей через Facebook.

devise_for :users, :controllers => { :omniauth_callbacks => "users/omniauth_callbacks" }

Это хорошо работает, но я хочу ограничить доступ пользователей к странице «http://app/users/sign_in»

Я могу изменить маршруты следующим образом:

devise_scope :user do 
  match '/users/auth/facebook/callback' => 'users/omniauth_callbacks#facebook'
end 

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

before_filter :authenticate_user!

Я хочу, чтобы пользователи использовали только urios, соответствующий devise_scope, в противном случае перенаправляют их всегда на какой-то маршрут по умолчанию «application # index».

0

1 ответы

Последние версии для разработки всегда будут перенаправлять вас на страницу root_url при использовании просто omniauth и не использовать database_authenticatable. Вы можете настроить это, создав маршрут с именем «new_user_session» как имя, указывающее на ваш «индекс приложения».

1
добавлено
Благодаря! Файл измененных маршрутов devise_for: users,: controllerlers => {: omniauth_callbacks => "users/omniauth_callbacks"} do get 'users/sign_in' => 'application # about',: as =>: new_user_session end а также пришлось удалять пользовательские модели: validatable option, поскольку поле пароля не требуется при использовании только опции omniauth.
добавлено автор Edijs Petersons, источник
pro.ruby
pro.ruby
1 181 участник(ов)

Язык программирования Ruby Additional docs: https://rubyreferences.github.io/rubyref/ Invite: https://telegram.me/joinchat/Be4rsT2NuB3CyJaF26j1kA Кто хочет компилировать: @crystal_ru (его синтаксис основан на Ruby) Участник @proDOT

Ruby, Rails, Hanami | dry-rb
Ruby, Rails, Hanami | dry-rb
1 180 участник(ов)

https://telegram.me/rubyjob - Ruby Job По вопросам - @eugene_shved

Ruby School .us
Ruby School .us
1 045 участник(ов)

Чат-болталка для учеников руби-школы и не только. Правила: https://telegra.ph/Pravila-chata-Rubi-shkoly-03-13

Random Ruby Chat
Random Ruby Chat
589 участник(ов)

Правила публикации вакансий: https://t.me/codenamecrud/60865

Rubyata
Rubyata
333 участник(ов)

Коммюнити Ruby и Ruby On Rails Флуд не приветствуются. Вакансии можно публиковать только и ТОЛЬКО по пятницам с хештегом #вакансия.

Ruby Talks
Ruby Talks
236 участник(ов)

Национальная Флеймотека

RubyRush
RubyRush
189 участник(ов)

rubyrush.ru программирование для самых новичков

Rails Chat
Rails Chat
87 участник(ов)

You are welcome to discuss Ruby On Rails development process and other stuff