Rails - redirect_to не может найти маршрут, если он обернут ограничением - PullRequest
0 голосов
/ 12 июня 2019

У меня есть такой маршрут, обернутый ограничением.

constraints DomainConstraint.new('admin.example.com') do
  get '/admin/:page', to: 'admin#browse', as: :admin_index
end

constraints DomainConstraint.new('client.example.com') do
  get '/:page', to: 'client#index', as: :client_index
end

Теперь, когда я хочу перенаправить запрос с admin.example.com контроллера на client контроллер через:

def some_page
  redirect_to action: :client_index, 
end

Там написано:

No route matches

Я считаю, что это происходит потому, что я обернул маршруты с ограничением. Как я могу перенаправить администратора к клиенту, используя constraints?

1 Ответ

2 голосов
/ 12 июня 2019

Причина, по которой ваш код не работает, потому что action params принимает имя действия на том же контроллере, если вы не указали имя контроллера.

Измените свой код с

def some_page
   redirect_to action: :client_index, 
end

К

def some_page
   redirect_to controller: 'client', action: :index 
end

Подробнее о redirect_to здесь

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...