2015-12-22 2 views
-1

Я пытаюсь установить корневой URL-адрес после входа пользователя в систему, но проблема возникает после входа пользователя в систему, они перенаправляются на главную страницу, но не на страницу, которую я хочу. Вот код.Не маршрутизация к контроллеру с именами в рельсах

devise_scope :user do 
    authenticated :user do 
     # root to: 'dashboard#index', module: 'client' 
     namespace :client do 
     root to: 'dashboard#index', as: :dashboard 
     end 
    end 
    unauthenticated :user do 
     root to: 'devise/registrations#new', as: :unauthenticated_root 
    end 
    end 

Пользователь должен был быть перенаправлен на/client/index, вместо этого он перенаправляется на \.

+1

Разрабатывают уже обрабатывает это с after_sign_in_path_for методом. Просто переопределите этот метод в своем контроллере (ApplicationController, предположительно) и попросите его вернуть любой путь, который вы хотите. –

+0

@TomL, Yup Я сделал это сейчас – Raaz

ответ

0

Я нашел способ заставить его работать.

namespace :client do 
    get 'dashboard/index' 
    end 

    devise_for :users, class_name: 'FormUser', controllers: { omniauth_callbacks: 'omniauth_callbacks', registrations: 'registrations' } 
    devise_scope :user do 
    # authenticated :user do 
    # # root to: 'dashboard#index', module: 'client' 
    # namespace :client do 
    #  root to: 'dashboard#index', as: :dashboard 
    # end 
    # end 
    unauthenticated :user do 
     root to: 'devise/registrations#new', as: :unauthenticated_root 
    end 
    end 

Если есть лучший способ, пожалуйста, дайте мне знать

Смежные вопросы