1
我有这种奇怪的情况。任何帮助,将不胜感激。如何在不创建实例变量的情况下使变量可用
这里是我的阶级结构的前景:
class A
def 1_function a1
call_c
end
def 2_function
call_c
end
def call_c
if a1 present
do this
else
do this
end
end
end
class B
A.1_function a1
end
class C
A.2_function
end
在这里,在call_c
我需要检查,如果该参数A1存在或不存在。我不能在call_c
添加默认放慢参数,因为有许多功能1_function
,2_function
和call_c
之间实际上中间(因此我最终会改变很多)
方法1: 我可以创建我班@变量。但是这会破坏原子性,并且不适合使用静态变量维护状态。
请给我建议任何其他的选择。
我看到你有一个非常高的代表有很多Rails的经验,所以我对代码示例有点惊讶。你介意将它更新为没有语法错误的东西吗?你真的想要从B类和C类发送一个实例方法名称给A类吗?另外,@variables不是静态变量,它们是实例变量。这是你的意思吗? –