3

次のことに気づきました。

  user1 = User.create - creates a model with id 1 and age  is 0

  same_user = User.find(1)

  same_user.update_attributes(:age => 18)

  p same_user.age # prints out 18
  p user1.age # prints out 0

既存の属性がデータベースから値を取得しないのはなぜですか?

4

1 に答える 1

6

ユーザーをリロードする必要があります。データベースで変更されている間、属性はメモリに保存されるためです。

p same_user.age
p user1.reload.age
于 2012-05-05T16:16:01.413 に答える