概述
很无语弄了一下午的rails console
本想用console插入一些records
结果一直不能,总是出现rollback提示
以为是数据库 mysql的问题,又查看了mysql自动提交,事务隔离界别等
但是一直还是没解决问题..
最后 终于知道了.. 怎么知道的过程就不记得了
原来是 自己写的model有好多validates..从来没遇到过这种情况以至于一直rollback却不知道自己插入数据并不符合自己的条件
一直使用的是 save方法 和 create方法
但是文档上写着:
By default, save always run validations. If any of them fail the action is cancelled and save returns false. However, if you supply :validate => false, validations are bypassed altogether.
With save! validations always run. If any of them fail ActiveRecord::RecordInvalid gets raised
而且明确说明是需要validates的
同理 create和create!也是
最后
以上就是怕孤独小天鹅为你收集整理的rails的create与create!和save与save!的区别的全部内容,希望文章能够帮你解决rails的create与create!和save与save!的区别所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复