大きな注意点:私の会社ではRails2を使用しています。だから私はActiveRecord2からの答え(存在する場合)を探しています。
reload
現在のメモリ内の値を呼び出したり上書きしたりせずに、データベースから属性の最新の値をフェッチするためのメソッドがActiveRecordにすでに含まれていますか?
例えば:
p = Person.find(123)
# Now the in-memory value is "Joe", which would be overwritten
# if I called reload
p.nickname = "Joe"
# I want something like this to execute the equivalent of:
# SELECT 'nickname' FROM persons WHERE id = 123;
nickname_from_db = p.get_current_value(:nickname)
私が求めていることは、自分で実装するのが非常に簡単であることを理解しています。私が求めていることを実行するActiveRecordメソッドがすでに存在する場合、私は車輪の再発明をしたくありません。