大警告:我们在我的公司使用 Rails 2。所以我正在从 ActiveRecord 2 中寻找答案(如果存在的话)。
ActiveRecord 中是否已经包含一种方法来从数据库中获取属性的最新值,而不调用reload
或覆盖当前的内存值?
例如:
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 方法可以满足我的要求,我只是不想重新发明轮子。