rails对删除一个active_record对象有两个方法: obj.delete和obj.destroy方法,但是两种方法是有差别的。
delete方法不是在事务里进行删除,也不会触发active_record的回调。而destroy是在事务里处理,并且会触发active_record的回调。
所以要慎用delete。
延伸一下:
1. relation的delete_all和destroy_all同样也会有这样的区别。
2. update_colums和update_attributes同样。
这里记录一下,避免忘记。