在Ruby on Rails中,是@variable.delete
还是@variable.destroy
答案 0 :(得分:33)
@variable.destroy
将调用所有回调(before_destroy等)以及确保关联得到遵守。 @variable.delete
只调用原始数据库查询来删除该对象。使用destroy
通常会更加安全,即使它更贵。
答案 1 :(得分:2)
假设您正在使用ActiveRecord,并且@variable
是ActiveRecord::Base
子类的实例,请致电@variable.destroy
。