`after_create`和`after_save`和什么时候使用哪个区别?
after_create
和after_save
是否与每个function相同?
我想在帐户创build后用户的电子邮件进行操作。
保存在数据库中时,我想做这个操作。
这是最好的使用: after_create
或after_save
?
after_create
只能工作一次 – 刚刚创buildlogging之后。
每次保存对象后, after_save
都能正常工作 – 即使多年后才更新它
所以,如果你只想做这个电子邮件操作一次(然后不再),然后使用after_create
。
如果每次保存对象时都要这样做,那么在after_save
从文档 :
after_create()
在尚未保存的新对象上调用
Base.save
(不存在任何logging)。
after_save()
在
Base.save
之后Base.save
(不pipe它是创build还是更新保存)。
after_save()
当您必须保存不经常保存的模型时,正常工作。 对于经常更改logging的特定示例,最好使用
after_commit()
确保在执行操作after_commit:calculate_credit_score之前将模型保存在数据库中
def calculate_credit_score #Call a Cron job end