У меня есть вид на app/views/debtors/index.html.erb
, который делает общий частичный, расположенный по адресу app/views/application/_advanced_search.html.erb
.Обрезание общего частичного вида в представлении spec в Rails
Я хотел был бы испытать взгляд index
но также должен заглушить вышеуказанное частичное. Как я могу это достичь? Я пробовал:
stub_template '_advanced_search' => 'Stubbed'
, но частичное не было найдено;stub_template '_advanced_search.html.erb' => 'Stubbed'
, то же, что и выше;view.lookup_context.view_paths.push 'app/views/application'
иstub_template '_advanced_search' => 'Stubbed'
, но затем он начал жаловаться на неопределенную переменную, используемую в частичном.
Я также попытался использовать полный путь к частичной, но все равно не повезло, он начал говорить, что частичное отсутствует.
Каков правильный способ обрезания общего частичного в приложении Rails?
Как насчет приложения 'stub_template '/ _advanced_search' => 'x''? – dax
В нем говорится, что частичное отсутствует. Он выглядит в '/ home/user/project/app/views', а затем в' application/_advanced_search_controls' и 'application/_advanced_search'. – linkyndy
странно ... вы можете видеть [реализацию] (https://github.com/rspec/rspec-rails/blob/a2a37ee192828ee81084d966e6f2f6f68d9773c0/lib/rspec/rails/example/view_example_group.rb#L73) просто подталкивает ваш заглушку к началу массива путей представления. возможно, попробуйте взглянуть на этот массив путей просмотра? в противном случае я бы догадался, что это рельсы autoload 'magic', запутанные. – dax