我在rails中有一些嵌套的对象。用户 -> has_many :tasks -> has_one :location。
昨天,我以为我无法将位置值链接到任务,但现在我意识到我也无法在 show 中获取要输出的值。
我可以通过调试获得输出
<%= @user.tasks 中的任务 %> <%= 调试任务.locations %> <% 结束 %>
输出
--- !ruby/对象:位置 属性: 编号:“1” 地址:“测试地址” 城市:“芝加哥” 属性缓存:{} 更改属性:{} 等等等等等等
所以我想如果我用
<%= task.locations.address %>
Rails 会给我地址字段。但我得到一个
nil:NilClass 的未定义方法“地址”
关于我做错了什么的任何建议?
---------- 更新,包括模型---------------- 我的任务和位置模型是
类任务 < ActiveRecord::Base attr_accessible :user_id, :date, :description, :location_id 属于_to:用户 has_one :位置 结尾 类位置 < ActiveRecord::Base attr_accessible :address, :city, :state, :zip has_many:任务 结尾