Я пытаюсь использовать Devise с несколькими областями, не переопределяя контроллеры Devise, пока мне это абсолютно не нужно.Я думаю, что я, возможно, достиг точки, где мне, наконец, придется переопределить контроллеры.
У меня есть три разных портала / сферы, называемые преподавателями, профессорами и студентами, и все они используют модель, разработанную пользователем.Каждая из этих областей имеет свои собственные виды разработки и пользовательские шаблоны входа.
Проблема, с которой я сталкиваюсь, заключается в том, что я получаю один и тот же шаблон подтверждения по электронной почте независимо от области, в которой я вошел. Первый, который я получаю, - это первый файл, определенный в моем файле rout.rb.Например:
devise_for :students, :class_name => 'User',
:path_names => { :sign_in => 'login', :sign_out =>'logout', :sign_up => 'signup' }
resources :students
devise_for :faculty, :class_name => 'User',
:path_names => { :sign_in => 'login', :sign_out =>'logout', :sign_up => 'signup' }
resources :faculty
devise_for :professors, :class_name => 'User',
:path_names => { :sign_in => 'login', :sign_out =>'logout', :sign_up => 'signup' }
resources :professors
devise_for :users,
:path_names => { :sign_in => 'login', :sign_out => 'logout',:sign_up => 'signup' }
resources :users
Каждый раз, когда я получаю электронное письмо с подтверждением, оно будет использовать шаблон электронного письма с подтверждением студента.Если я перенесу преподавателей наверх, я получу письмо от преподавателей и так далее.
Есть ли способ заставить каждую область отправлять соответствующий шаблон электронной почты с подтверждением без необходимости переопределять Devise?