我有一個控制器。在控制器中我有兩種方法。我想要一個變量,它的值在方法1中設置,可以在方法2中訪問。我可以使用一個實例變量來實現嗎?實例變量用法
Q
實例變量用法
0
A
回答
3
是的,只要所有事情都發生在單個請求中,您就可以爲此使用實例變量。
因此,像這樣:
class PancakesController < ApplicationController
def where_is
@house = Pancake.find(params[:id])
render :json => mangle, :status => :ok
end
protected
def mangle
@house
end
end
將正常工作。然而,這樣的事情:
class PancakesController < ApplicationController
def where_is
@house = Pancake.find(params[:id])
#...
end
def mangle
if(@house)
#...
end
#...
end
end
不會,如果where_is
和mangle
被稱爲差異請求工作。
請記住,控制器實例的生命週期是單個請求。
0
是的,你可以使用一個實例變量來實現。
相關問題
- 1. Ruby實例變量語法
- 2. 類實例變量的正確用法
- 3. 實例變量
- 4. 實例變量
- 5. 實例變量
- 6. 實例變量
- 7. 實例變量
- 8. 從實例本身調用實例變量的方法
- 9. 實例方法無法讀取類實例變量
- 10. 使用實例變量
- 11. 使用實例變量&self.variable
- 12. 使用「私人」變量+方法v.s. 「公共」的實例變量
- 13. iOS實例變量
- 14. Rails實例變量
- 15. querydsl實例變量
- 16. Android實例變量
- 17. 常量實例變量?
- 18. 實例變量,受另一個實例
- 19. 實例變量重置實例
- 20. 實例化實例變量爲塊
- 21. Rails方法來分配實例變量
- 22. 無法執行實例變量
- 23. 變量有權訪問實例方法
- 24. 目標C:方法和實例變量
- 25. 從方法實例訪問此變量
- 26. 無法通過實例變量在QAFTestStepProvider
- 27. PHP實例方法與變量
- 28. 瞭解類和實例方法變量
- 29. Ruby - 類實例變量getter setter方法
- 30. 方法參數,實例變量
我不明白爲什麼值應該重置,如果你正在做的是從第二種方法打印。 – DaMainBoss
所以通常我不會有問題訪問在同一類的另一個方法中的一個方法中設置的實例變量? – Drew
如果是這樣,應用程序控制器中是否會有一個設置可能導致我失去該值? – Drew