Как перенаправить вways.rb для root? - PullRequest
2 голосов
/ 09 августа 2011

В нижней части моего файла маршрутов есть следующее:

root :to => 'threads#index', :constraints => lambda {|r| r.env["warden"].authenticate? }

Проблема в том, что URL просто /, а не / threads

Как я могу получить вышеуказанное для перенаправления на темы # index или / threads?

Спасибо

1 Ответ

2 голосов
/ 11 августа 2011

Если я правильно понимаю ваш вопрос, вы просто хотите изменить URL-адрес корня вашего сайта с http://....com/ на http://....com/threads.

В этом случае вам просто нужно добавить эту строку:

config.action_controller.relative_url_root = '/threads'

в любой из стандартных файлов конфигурации, например, config/application.rb, config/development.rbили config/production.rb в зависимости от того, находится ли ваше приложение в производственном режиме или в режиме разработки.

В руководстве по рельсам есть дополнительная информация: здесь

РЕДАКТИРОВАТЬ:

Похоже, что приведенное выше решение может не работать.Вот тот, который я попробовал сам.Вы можете просто обернуть все свои ранее существующие маршруты в область действия внутри своего файла routes.rb.то есть:

scope "/threads" do
  ..All your preexisting routes inside this..
end

Обратите внимание, что это добавит /threads к КАЖДОМУ пути в вашем приложении.Если вы хотите, чтобы это происходило только с root, убедитесь, что в область видимости обернута только строка root :to => ....

Вот простое объяснение областей действия: здесь

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