我在我的 Ruby on Rails 应用程序中遇到了一个问题,其模型中的 belongs_to 关系一直为 nil。
给定以下模型:
class Chassis < ActiveRecord::Base
belongs_to :model
belongs_to :chassis_size
end
class Model < ActiveRecord::Base
has_many :chassis
end
class ChassisSize < ActiveRecord::Base
has_many :chassis
end
现在,我希望在我的底盘索引视图中我会看到模型和底盘尺寸数据:
<% @chassis.each do |chassis| %>
<%= chassis.id %><br />
<%= chassis.model.name %><br />
<%= chassis.chassis_size.size %><br />
<% end %>
但是我收到一个错误,即 chassis_size.size 为零:
You have a nil object when you didn't expect it!
You might have expected an instance of Array.
The error occurred while evaluating nil.size
查看数据库中的数据,一切似乎都是正确的。
我不确定为什么模型可以工作,但机箱尺寸却不行。我错过了什么?为什么机箱大小数据似乎没有加载?