我有一个问题,在每个用户配置文件中,他们有一个名为wishlist的部分的编辑按钮,我的问题是,当用户试图点击编辑按钮时,它会返回一个错误,说它无法找到带有id的心愿单,例如34这是user.id而不是wishlist.id。但是从我所能理解的代码中我可以理解的不是我所写的。
我的代码如下:
用户/ show.html.erb
<div class="post3">
<h1><%= t('.mwg')%></h1><br />
<div id = "table-2">
<table width="240" >
<tbody>
<% Wishlist.where(:user_id => @user).each do |wishlist| %>
<tr><td width="30"><b>1:</b></td><td><%= wishlist.number_1 %></td></tr>
<tr><td width="30"><b>2:</b></td><td><%= wishlist.number_2 %></td></tr>
<tr><td width="30"><b>3:</b></td><td><%= wishlist.number_3 %></td></tr>
<tr><td width="30"><b>4:</b></td><td><%= wishlist.number_4 %></td></tr>
<tr><td width="30"><b>5:</b></td><td><%= wishlist.number_5 %></td></tr>
</tbody>
</table>
</div>
<%if current_user %>
<% if current_user.id == wishlist.user_id %>
<div id="text3"><%= link_to t('.edit'), edit_wishlist_path(@wishlist) %></div><br />
<%end%>
<%end%>
<%end%>
不,我尝试将current_user.id == wishlist.user_id行更改为以下内容:
<% if current_user.id == @wishlist.user_id %>
但是我得到了未定义方法user_id的错误
如果我点击原始代码的编辑,它会尝试查找id与用户匹配的心愿单,但我希望它找到id与user_id列匹配的用户。
答案 0 :(得分:1)
您需要调用edit_wishlist_path(心愿单),而不是@wishlist。