ActiveRecord Bang() 方法
如果在发生故障时需要 ActiveRecord 方法来引发异常而不是 false 值,则可以向它们添加 ! 。这是非常重要的。如果你不使用,很难发现一些例外/失败! 在他们。我建议在开发周期中这样做,以这种方式编写所有 ActiveRecord 代码,以节省你的时间和麻烦。
Class User < ActiveRecord::Base
validates :last_name, presence: true
end
User.create!(first_name: "John")
#=> ActiveRecord::RecordInvalid: Validation failed: Last name can't be blank
接受爆炸 (!) 的 ActiveRecord 方法是: **
.create!.take!.first!.last!.find_by!.find_or_create_by!#save!#update!- 所有 AR 动态查找器