1

如果下面的代码运行两次,两次s.save都会返回true,表示成功,但是第二次,时间不会更新?

foo = Foo.new
foo._id = 100
foo.time = Time.now
p foo.save
4

1 回答 1

0

先看看mongo数据库有多少数据。根据您的解释,您似乎两次运行同一段代码。因此,您两次运行同一段代码实际上是在插入另一条记录,因为在第二次运行时, foo 指的是一个新实例。

如果您想尝试更新记录,请尝试以下操作:

foo = Foo.new
foo._id = 100
foo.time = Time.now
puts foo.save
foo.time = Time.now
puts foo.save

在第二次的代码中, foo 指的是之前实例化的实例。

于 2010-09-01T02:46:50.240 回答