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不是靜態變量,它們是實例變量。這是你的意思嗎? –