Asw*_*nan 9 ruby ruby-on-rails
这在Rails中有什么作用?
create! do |user|
#initialise user
end
Run Code Online (Sandbox Code Playgroud)
我认为它创建了一个用户对象并将其保存到数据库中.它与仅仅说user.new(...)和user.save()?有什么不同?
Adi*_*ghi 22
简而言之:
create!create返回对象时引发异常(如果未传递验证,则返回未保存的对象).save!save返回true/时会引发错误false.save没有属性,create确实如此.new不保存.new类似build的ActiveRecord背景.
create保存到数据库并返回true或false取决于模型验证.
create!保存到数据库但如果模型验证(或任何其他错误)中存在错误,则会引发异常.
| 归档时间: |
|
| 查看次数: |
8214 次 |
| 最近记录: |