Как установить rails devin sign_in в качестве корневого URL - PullRequest
0 голосов
/ 28 марта 2019
devise_for :admins, path: 'admins' 
devise_scope :admin do
  root to: "devise/sessions#new"
end
http://localhost:3000/

Я хочу перенаправить путь admins / sign_in, когда я просто ввожу выше URL, страница входа иногда открывается, но после нажатия на кнопку входа каждый раз, когда я получаю эту ошибку и не вхожу. КакДля решения этой проблемы?

ошибка:

Цепочка фильтра остановлена ​​как: require_no_authentication к просмотру или перенаправлению

Ответы [ 3 ]

1 голос
/ 28 марта 2019

похоже, что вы пытаетесь войти в систему того же пользователя снова без выхода из системы

devise_for :admins, path: 'admins' 

devise_scope :admin do
  authenticated :admin do
    root 'home#index', as: :authenticated_root
  end

  unauthenticated do
    root 'devise/sessions#new', as: :unauthenticated_root
  end
end
0 голосов
/ 28 марта 2019

Зарегистрированный пользователь не может войти снова ...

Вы можете попробовать это в вашем session_controller.rb add

class Users::SessionsController < Devise::SessionsController
  prepend_before_filter :require_no_authentication, :only => [ :new, :create, :cancel ]
end
0 голосов
/ 28 марта 2019

Вы можете добиться того же с этим

rout.rb

root "home#index"
devise_for :admins, path: 'admins' 

home_controller.rb

class HomeController < ApplicationController
def index
   if not admin_signed_in?
     redirect_to admin_session_path
   end
end
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...