Я использую рельсы 3, Стейк и Капибара. У меня есть резервные ресурсы, можно ли использовать посредники маршрутизации для просмотров и контроллеров?
Как заставить Capybara использовать помощников маршрутизации
Ответ 1
Вам просто нужно поместить это на свой spec_helper.rb
config.include Rails.application.routes.url_helpers
внутри блока определения конфигурации, то есть тот, который завернут:
RSpec.configure do |config|
# All your config.include calls go here.
end
И затем вы можете использовать его в своих спецификациях:
scenario "Show school" do
school = School.create!(:name => "Pablo de Olavide")
visit(school_path(school))
save_and_open_page
page.has_content?("Pablo de Olavide").should == true
end
Не использовать:
include ActionController::UrlWrite
Поскольку он устарел в рельсах 3
Ответ 2
Я изменил его на это, чтобы заставить его работать с Rails 4.1.6:
config.include Rails.application.routes.url_helpers if defined? Rails