Я следую руководству Майкла Хартла по рельсам (глава 5, раздел 5.3.4). Я добавил все маршруты, но я не могу следовать им, как он описывает. Во-первых, я не уверен, нужно ли их вручную вводить в адресную строку или они должны работать, переходя по ссылкам. Это работает, если я ввожу их вручную, но ссылки не работают. Во-вторых, тест маршрутизации не может найти 2 корневых маршрута. Я пытался найти какие-либо ошибки, но безрезультатно. Вот разделы, которые, как мне кажется, относятся к корневому пути.
маршруты.rb
Rails.application.routes.draw do
root 'static_pages#home'
get 'help' => 'static_pages#help'
get 'about' => 'static_pages#about'
get 'contact' => 'static_pages#contact'
_header.html.erb
<header class="navbar navbar-fixed-top navbar-inverse">
<div class="container">
<%= link_to "sample app", 'root_path', id: "logo" %>
<nav>
<ul class="nav navbar-nav pull-right">
<li><%= link_to "Home", 'root_path' %></li>
<li><%= link_to "Help", 'help_path' %></li>
<li><%= link_to "Log in", '#' %></li>
</ul>
</nav>
</div>
</header>
site_layout_test.rb
class SiteLayoutTest < ActionDispatch::IntegrationTest
test "layout links" do
get root_path
assert_template 'static_pages/home'
assert_select "a[href=?]", root_path, count: 2
assert_select "a[href=?]", help_path
assert_select "a[href=?]", about_path
assert_select "a[href=?]", contact_path
end
end
Я чувствую себя довольно глупо, поскольку я должен был бы понять это, но все это так ново для меня. Заранее спасибо за вашу помощь.