我一直收到上述错误,花了几天的时间挖掘帖子和文档,试图找到原因。
应用程序我是建筑物记录燃料使用情况。维修者这个词是指自己模型中的供应商,其中包含Rep_Name(名称)地址,电话等属性。最初为了脚手架目的,只使用了repairer_id,一切正常。尝试从修复程序模型中调用rep_name时出现问题。 (我甚至尝试将字段重命名为rep_name而不是名称来解决问题)
undefined method `rep_name' for nil:NilClass
提取的来源(第38行):
35: <td><%= f.litres %></td>
36: <td><%= f.cost %></td>
37: <td><%= f.tax %></td>
38: <td><%= f.repairer.rep_name%></td>
39: <td><%= f.fuel_type %></td>
40: <td class= "actions">
41: <%= link_to("Show", {:action => 'show', :id => f.id}, :class => 'btn btn-info') %>
答案 0 :(得分:1)
替换&lt;%= f.repairer.rep_name%&gt;与
<%= f.repairer.blank? ? "" : f.repairer.rep_name %>
答案 1 :(得分:0)
原因实际上是数据库中的脏数据。我有几个燃料记录,其中repairer_id为空。
我删除了这些记录并解决了已发布的记录。