我想有哪些可以包含在类模块,并允许这样的设置选项:定义一个类的方法选项类似行动梅勒类不
class MyService
include Healthcheck
healthcheck_id 'foobar'
end
,模块也会看起来是像:
module Healthcheck
extend ActiveSupport::Concern
included do
def self.healthcheck_id(value)
# What do I do here?
end
end
end
的问题是:我怎么保存这个值被传递作为参数,这样我以后可以用吗?
也许有些情况下可能会帮助在这里,我的灵感来自于行动梅勒:
class ExampleMailer < ActionMailer::Base
default from: "[email protected]"
end
在上述类方法default
是接受哈希带参数,显然from
所使用的动作梅勒时的例子(?)电子邮件正在发送。
不要说不要使用类变量,只要小心他们周围的子类:'类MySubService'barfoo'; MySubService.new.foo#=>'barfoo'' –