我有一個關於rails最佳實踐的問題。 在我的軌道項目中,我有以下代碼:在rails控制器中使用靜態變量是否是一種好的做法?
class MyController < ApplicationController
def some_method
@product = MyFabricatorClass.new.create_product
end
...
end
MyFabricatorClass不依賴某些國家,而且其行爲是不變的。我也做了很多C++的東西,對我來說,總是實例化一個新的MyFabricatorClass對象會讓人感覺不夠高效。在C++項目中,我會使用類似的東西:
class MyController < ApplicationController
@@my_fabricator = nil
def some_method
@@my_fabricator ||= MyFabricatorClass.new
@product = @@my_fabricator.create_product
end
...
end
這種風格在Rails中是否合法?典型的導軌方式是什麼?
感謝您的任何建議......!
爲什麼不把'create_product' 「MyFabricatorClass」上的類方法? – jvillian
@jvillian:感謝您的評論。對不起,我選擇了錯誤的命名。 MyFabricatorClass不是重新召集我的班級,但第三方。所以,更改MyFabricatorClass不是一個選項。 – schmitze333