У меня есть этот маршрут для разделения пользователей разных агентств:
scope "/:agency" do
resources :users
end
В ApplicationController я добавил это поведение к default_url_options:
def default_url_options(options={})
{ :agency => params[:agency] }
end
Все выглядит нормально с сервером иparams [: agency] сообщает, что в URL.Но во время тестирования с Cucumber + Capybara
user_path(1)
становится
http://www.example.com/1/users
вместо
http://www.example.com/theagency/users/1
Читая немного документации, я попробовал это:
scope "/:agency", :defaults => { :agency => 'test-agency'} do
resources :users
end
Тесты, похоже, работают (URL-адреса построены правильно), но на самом деле все URL-адреса создаются с параметром test-agency в качестве первого параметра, независимо от того, какой это параметр.
Любая идея иметьтесты работают с этой настройкой?