Rails中new,build,create,save的区别

1.build是new的alias,而new只会产生一个id为nil并且只存在于内存中的对象,需要save才能保存

create则返回一个已经save过的对象=new+save

2.create,save会触发validation的验证,如果验证不通过create会返回一个空对象,而save则会触发rollback,然后返回false

3.create,new,build属于模型类的类方法,save则属于实例方法

你可能感兴趣的:(Rails中new,build,create,save的区别)