我正在研究可以邏輯分組爲核心引擎和業務領域模塊的應用程序。業務領域模塊基本上封裝了特定於我們客戶業務的代碼。我們最初使用我們的核心引擎的根軌結構將其分開,並將所有客戶代碼放在單獨的插件中。是否使用Rails插件進行模塊化?
但是我們遇到了各種各樣的問題,其中大部分可能會放在開發環境中的Rails類重新加載。儘管我們已經設法大量工作,但我們遇到了Rails錯誤,並且部分卸載類與Rails.cache結合在一起。
我想知道的是,我們是否在濫用Rails插件的預期使用模式?正在打包我們的應用程序的各個方面,因爲插件是正確的舉措?有沒有更好的方法來做到這一點?或者我們應該寧願戰士解決這些剩餘的問題?
我們現在正在將插件作爲模塊在根軌結構中重寫,但我必須承認我更喜歡插件迷你應用程序目錄結構的優雅。
Brendon McLean。
很高興知道其他人在生產中成功使用Rails引擎。但我不確定團隊是否會容忍關閉動態重新加載(尤其是接近前端的那些)。也許我會再試一次試圖解決我們不完整的卸載類問題。 – 2010-06-26 11:04:42
感謝您的回答。我已經做出了讓插件/引擎更加高效的方法。新增了config.reload_plugin = true,並將所有內容放在軌道友好的位置。我還爲開發創建了一個空緩存,它永遠不會緩存任何內容。我認爲這解決了我們的插件問題。 – 2010-06-30 13:51:43