データの値を編集するタスクがあります。そのために、edit_userlist
ページを作成し、編集用のコードを作成しました。しかし、実行すると、次のように表示されるエラーが発生しました
Couldn't find User without an ID
このリンクの URL は次のとおりです。http://localhost:3000/edit_userlist.1
私のコントローラーページは
def edit_userlist
@user = User.find(params[:id])
end
私の編集用インデックスページは
<% @users.each do |user| %>
<tr>
<td><%= user.name %></td>
<td><%= user.age %></td>
<td><%= user.country %></td>
<td><%= user.state %></td>
<td><%= user.email %></td>
<td><%= user.phone %></td>
<td><%= link_to 'Show', user %></td>
<td><%= link_to 'Edit', edit_userlist_path(user) %></td>
<td><%= link_to 'Destroy', user, :method => :delete, :data => { :confirm => 'Are you sure?' } %></td>
</tr>
<% end %>
私の edit_userlist ページは
<%= form_for(@user) do |f| %>
<% if @user.errors.any? %>
<div id="error_explanation">
<h2><%= pluralize(@user.errors.count, "error") %> prohibited this user from being saved:</h2>
<ul>
<% @user.errors.full_messages.each do |msg| %>
<li><%= msg %></li>
<% end %>
</ul>
</div>
<% end %>
<div class="field">
<%= f.label :name %><br />
<%= f.text_field :name %>
</div>
<div class="field">
<%= f.label :age %><br />
<%= f.text_field :age %>
</div>
<div class="field">
<%= f.label :country %><br />
<%= f.text_field :country %>
</div>
<div class="field">
<%= f.label :state %><br />
<%= f.text_field :state %>
</div>
<div class="field">
<%= f.label :email %><br />
<%= f.text_field :email %>
</div>
<div class="field">
<%= f.label :phone %><br />
<%= f.text_field :phone %>
</div>
<div class="actions">
<%= f.submit %>
</div>
<% end %>
ページへの適切なルーティングを行いました。マイroutes.rb
ページは
match '/edit_userlist/' => 'users#edit_userlist', :as => :edit_userlist
ID を渡して値を編集するにはどうすればよいですか?