オブジェクトの更新についてです。
基本的な更新の方法は2つです。ひとつは、属性を個別に代入する方法です。
変更をデータベースに保存するために最後にsaveを実行する必要があることを忘れないでください。保存を行わずにreloadを実行すると、データベースの情報を元にオブジェクトを再読み込みするので、以下のように変更が取り消されます。
更新処理を実行すると『updated_at』の値が変更されます。
属性を更新するもうひとつの方法は、update_attributesを使うものです。
update_attributesメソッドは属性のハッシュを受け取り、成功時には更新と保存を続けて同時に行います (保存に成功した場合はtrueを返します)。ただし、検証に1つでも失敗すると、update_attributesの呼び出しは失敗します。
たとえば、パスワードをレコードに保存することを要求すると検証は失敗します。特定の属性のみを更新する必要がある場合は、以下のようにupdate_attributeを単発で使用して制限を回避する必要があります。