Я пытаюсь создать модель пользователей вручную (без использования 'resources: users' в файле rout.rb). Мой файлways.rb выглядит так:
match '/users/:id', :to => 'users#show'
match '/all_users', :to => 'users#index'
Это мой метод индексации в контроллере пользователя:
def index
@title = "All users"
@users = User.paginate(:page => params[:page])
end
Это мой индексный просмотр:
<h1>All users</h1>
<%= will_paginate %>
<ul class="users">
<% @users.each do |user| %>
<li>
<%= link_to user.email, user %>
</li>
<% end %>
</ul>
<%= will_paginate %>
Я получаю это сообщение об ошибке, когда нажимаю localhost: 3000 / all_users:
undefined method `user_path'
Я не понимаю, откуда это.
EDIT:
Хорошо, я обнаружил, что изменение 'user' на '@user' в представлении заставляет его работать:
<%= link_to user.email, @user %>
Но я действительно не понимаю сообщения об ошибке или реальной разницы между «user» и «@user». Плюс, нажатие на созданную ссылку не перенаправляет на страницу пользователя, оно остается на localhost: 3000 / all_users.