2012-08-30 44 views
0

我已經繼承了一個我期待重構的rails項目。該應用程序非常輕鬆地使用ActiveRecord;大部分調用都是通過REST端點進行的。現在,進行這些調用的類位於lib目錄中。我一直在閱讀幾個posts regarding the lib directory,我想知道爲什麼原始開發人員不使用模型目錄的原因(必須有一些原因)以及將這些類移入模型目錄的優點/缺點是什麼。在哪裏上課?模型或lib目錄?

它覺得像這些類應該在模型目錄中,因爲它們是應用程序的核心。

回答

1

這就是我正在做的,把模型文件夾放在負責處理數據庫的所有類中。如果它是庫或類 ,它不依賴於數據庫,可以在不同的項目中使用 ,那麼它可以放在lib文件夾中。

+0

我同意這種方法,但是在我的15-ish類中,只有一個由ActiveRecord支持,但它們都包含帶有REST API的類似CRUD的邏輯。 –

1

如果你的類不是模型相關的(ActiveRecord),你應該考慮把它放在一個更具體的模型的地方,但如果你把它放在模型中,把它們放在一個封閉的文件夾中。

應用程序 - >模型 - >終端 內部配置 - > application.rb中,把該行的代碼加載它

config.autoload_paths += %W(#{Rails.root}/app/models/ar) 

或者你可以全力以赴把它放在一個單獨的目錄 應用程序 - >端點

原因是因爲您的REST端點將被隔離;如果您打算在應用程序上構建更多內容,您的業務邏輯將更加「乾淨」,並且模塊化程度更低。