开始使用 Rails,我被块操作困住了。我想通过计算两个日期时间字段之间的差异来遍历模型并更新新字段的整数值。在控制台中执行此操作:
MyModel.all.each do |m|
m.new_integer_field = m.existing_datetime_field - m.parent_object.existing_datetime_field
m.save!
end
结果是
NoMethodError: undefined method `-' for nil:NilClass
如果我这样做,它适用于一张唱片:
m = MyModel.find(1)
m.new_integer_field = m.existing_datetime_field - m.parent_object.existing_datetime_field
m.save
我想这是一个基本的语法问题,但找不到明显的解释。很高兴得到一些指示。