モデルの関連付けは次のとおりです。
モデルI
class TimeLog < ActiveRecord::Base
has_one :custom_time_field, :dependent => :destroy
end
モデルII
class CustomTimeField < ActiveRecord::Base
belongs_to :time_log
end
エラーの詳細:
a = TimeLog.find(1)
a.custom_time_field
#returns => #<CustomTimeField id: 1, time_entry_id: 1, status: 'incomplete', start_time: "2000-01-01 11:24:00", end_time: "2000-01-01 11:24:00">
a.custom_time_field.update(1, :status => '') # returns undefined method `update'
ただし、a.custom_time_field.update_attributes()は機能します
これで、update_attributesを使用でき、オブジェクトを作成してsaveメソッドを使用することもできます。
しかし、なぜそのような場合に更新メソッドを使用できないのですか?これは、一度に複数の属性を更新する必要がある場合に役立ちます。
コメント/ポインタ?