У нас есть приложение, и мы передали двигатель/драгоценный камень под именем Arcop
. Механизм создает опросы для клиентов и имеет почтовую программу, которая отправляет электронные письма со ссылкой на опрос. Если клиент входит в приложение, ссылка работает правильно. Однако, если пользователь не зарегистрирован в приложении, он должен перенаправить на приложение sessions#new
. Что, кажется, происходит, так это то, что Rails пытается найти маршрут в движке, а не в приложении.Rails двигатель переопределяет маршрут приложения
ошибка я получаю, когда я нажимаю на ссылку электронной почты, чтобы перейти на обследование двигателя генерироваться (/ локальный: 3001/АРКУЗ/survey_responses/30): application_controller.rb
No route matches {:action=>"new", :controller=>"sessions", :id=>"30"}
приложения
before_action :redirect_if_site_is_private
def redirect_if_site_is_private
...
respond_to do |format|
format.html do
save_location
redirect_to login_path
end
end
Войти путь определяется как:
get 'sign-in' => 'sessions#new', as: :login
я прочитал через Getting Started with Engines Rails Guide и двигатель наследует ApplicationController правильно:
class Arcop::ApplicationController < ::ApplicationController
Так что я не знаю, куда идти отсюда ...