Ruby on Rails 回调简介
示例
回调是一种在对象生命周期的特定时刻(在从数据库创建,删除,更新,验证,保存或加载之前或之后)被调用的方法。
例如,假设您的列表在创建后30天内到期。
一种方法是这样的:
class Listing < ApplicationRecord
after_create :set_expiry_date
private
def set_expiry_date
expiry_date =Date.today+ 30.days
self.update_column(:expires_on, expiry_date)
end
end回调的所有可用方法如下,在每个对象操作期间调用它们的顺序相同:
创建一个对象
before_validation
after_validation
before_save
around_save
before_create
around_create
after_create
after_save
after_commit/after_rollback
更新对象
before_validation
after_validation
before_save
around_save
before_update
around_update
after_update
after_save
after_commit/after_rollback
销毁对象
before_destroy
around_destroy
after_destroy
after_commit/after_rollback
注意:after_save可以同时在create和update上运行,但无论执行宏调用的顺序如何,始终在更具体的回调after_create和after_update之后。
热门推荐
1 泰迪狗狗如何训练
3 狗狗训练图
5 狗狗训练方法
6 训练狗狗不咬人
8 敏捷训练狗狗
10 训练狗狗吃饭
11 泰迪狗狗训练
12 狗狗从多大开始训练
13 狗狗训练学校费用
14 怎么去训练狗狗
15 狗狗训练狗狗
16 狗狗训练教程
17 训练狗狗装死
18 泰迪狗狗的训练方法