我想为两个模型添加一个方法,所以我创建了一个这样的模块,并将它包含在两个模型中.
module UserReputation
def check_something
...
end
end
Run Code Online (Sandbox Code Playgroud)
这工作得很好.然后我希望在所有这些模型上将该方法称为:after_create.如果我手动将它添加到所有模型,它可以工作,但我想要聪明并将其包含在模块中,如下所示:
module UserReputation
after_create :check_something
def check_something
...
end
end
Run Code Online (Sandbox Code Playgroud)
但这不起作用.有什么方法可以实现这一点并干掉after_create吗?
gir*_*aff 11
尝试self.included,当模块混合到类中时调用它base:
module UserReputation
def self.included(base)
base.after_create :check_something
end
end
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1939 次 |
| 最近记录: |