after_create和after_save是否与每个功能相同?
我想在创建帐户后对用户的电子邮件执行操作。
当它被保存到数据库中时,我想执行该操作。
after_create和after_save哪个更好用?
发布于 2011-06-21 16:12:09
after_create只工作一次-就在第一次创建记录之后。
每次保存对象时,after_save都会起作用-即使您只是在多年后才更新它
因此,如果您只想执行此电子邮件操作一次(然后再也不会执行),那么请使用after_create。
如果要在每次保存对象时执行此操作,则在after_save中执行此操作
发布于 2011-06-21 17:34:46
来自the docs
after_create()
在尚未保存的新对象上的Base.save之后调用(不存在记录)。
after_save()
在Base.save之后调用(不管是create还是update save)。
发布于 2017-04-10 22:13:02
after_save()当您必须保存不经常保存的模型时,可以很好地工作。对于这个频繁更改记录的特定示例,建议使用
after_commit()确保在执行操作之前将模型保存在数据库中after_commit :calculate_credit_score
def calculate_credit_score
#Call a Cron job
endhttps://stackoverflow.com/questions/6422199
复制相似问题