新手问题 关于 save

xiaoronglv · July 07, 2012 · Last by kevin_zhou replied at July 10, 2012 · 2506 hits

看到一串代码,不理解,请各位指教,thanks。

if @order.save
p "good"
else
p "not good"
end

请问 save 为什么可以作为判断条件?什么情况下是 true,什么情况下是 false?

save 会有返回值,如果保存成功,就 true,其他 false,抛出异常等。 你可以在 rails c 中测试一下!

在这种情况下,save 不成功返回 nil 对象。 @order.save! 不成功会抛出异常。

#1 楼 @googya 感谢回复。如果 save 不成功,实例变量的值还保存在内存中,对吧?

😄

#2 楼 @kevin_zhou AR::save 不成功返回的是 false。

楼主写的 Python 代码哇!

#6 楼 @huacnlee 啊,是 rails 代码啊。 不懂 python。😄

7 Floor has deleted

#8 楼 @messiahxu 灰常不好意思,加上了。

#5 楼 @ashchan 我从"Agile Web Development with Rails 4th" 的第 293 页中有一句解释,"save returns true if the record was saved; it returns nil otherwise." 不知是否正确?

You need to Sign in before reply, if you don't have an account, please Sign up first.