正如问题标题所说,我在模块中有一个包含的钩子:
def self.included(base)
puts 'included'
base.extend API
end
我的 API 要求对象上的某些变量存在,但没有一个变量被创建。
我试过了:
base.variable_name = []
%x|#{base}.variable_name = []|
base.instance_variable_set(:@variable_name,[])
base.instance_exec{@variable_name = []}
- 1-2 在内部
base.instance_exec
但使用self
而不是base
然而它们都不起作用,控制台只是抱怨variable_name=
不存在。
我勒个去?
如何让变量存在于included
钩子内的基础对象上?