所以我知道爆(感叹号)和非爆炸方法之间的区别通常是方法将修改对象本身还是返回一个单独的修改对象,保持原始不变。Rails - 创建和创建!方法,RoR 3教程
然后,在本书的第6章中构建User模型时,我遇到了User.create
方法,该方法创建一个新模型并将其单步保存到数据库中。在Michael Hartl的Ruby on Rails 3教程中,他写道User.create!
方法“的工作原理与create
方法一样...除了如果创建失败,它将引发ActiveRecord :: Record-Invalid异常。
我很困惑。 User.create!
方法不遵循Ruby“bang-convention”还是我完全错过了某些东西?如果他遵循惯例,如果它是一个类方法,User.create!
如何修改自己?