我希望这里有一些显而易见的东西,我想不出你为什么不能在after_update调用中传递方法参数的原因:
class Card < ActiveRecord::Base
after_update :create_thumb(100)
def create_thumb(size)
...
这将无法启动。如果我在方法中对大小进行硬编码就可以了。是否有一些时髦的语法可以做到这一点,还是不可能?
感谢。
答案 0 :(得分:2)
您可以传入Proc并调用其中的方法:
class Card < ActiveRecord::Base
after_update { create_thumb(100) }
def create_thumb(size)
...
答案 1 :(得分:1)
您可以在方法上设置默认值,如下所示:
class Card < ActiveRecord::Base
after_update :create_thumb
def create_thumb(size = 100)
...