非常快的问题。我的服务器警告我第37行将被弃用,具体为:
#Server error:
views/projects/index.html.erb:37: warning: Object#id will be deprecated; use Object#object_id
#Views/projects/index.html.erb:
6: <% for project in @projects do %>
36: <%= project.id %>
37: <%= Matching.find_all_by_customer_id_and_project_id( @customer.id, project.id).id %>
38: <%= @customer.id %>
这是我的困惑。第36行project.id没有发出警告,所以我假设问题是我在匹配模型上调用ID。为什么只匹配引发错误而不是客户或项目呢?我怎样才能在我的代码中纠正这个问题?
非常感谢。
答案 0 :(得分:5)
@customer
或您的Matching
对象可能为零。 nil.id
是一个不推荐使用的方法,引用了nil的对象ID。
在继续使用模板的这一部分之前,请检查您获得的@customer
和Matching
对象是否包含某些内容,您应该没问题。