我開始研究第一個小型rails項目,該項目實際上將從數據庫獲取數據並在jquery數據表中進行可視化。根本沒有更新。問題是,是否應該爲這些數據創建模型並通過activerecord訪問它,或者可以直接通過控制器中的SQL命令訪問它?只有在Rails中可視化數據時,我應該創建模型文件嗎?
0
A
回答
2
您仍然應該製作模型以保持控制器清潔。
Rails模式是所有的數據訪問應該通過模型來完成。你不一定需要任何更新/插入邏輯,甚至不需要從ActiveRecord繼承,但這正是代碼讀者期望找到數據訪問的地方。此外,您需要將某種對象傳遞給您的視圖,並且使用模型而不是丟棄臨時對象是最有意義的。這樣你可以乾淨地改變模型,只有一個地方可以更新。
例如,假設您稍後需要爲報告添加full_name
屬性。如果您在控制器中使用了直接的SQL,並且您只是將查詢結果傳遞給視圖,則您需要更難以協調first_name
和last_name
。但與模型,你可以添加
def full_name
"#{self.first_name} #{self.last_name}"
end
在一個地方,這表明報告中的所有控制器的操作現在有一個full_name
財產。
如果您打算進行測試,那麼使用模型類可以讓您輕鬆得多。您可以測試模型而不必涉及控制器。
相關問題
- 1. 我應該根據數據庫中的數據結構創建模型類嗎?
- 2. 在Rails中,如果只有響應正文變化,我應該創建一個新的控制器動作嗎?
- 3. 在Django中創建模型時,是否應該考慮數據庫規範化?
- 4. 我應該只使用兩個對象的視圖模型嗎?
- 5. 我應該在不同視圖中重用視圖模型嗎?
- 6. 我應該爲模塊創建DLL嗎?
- 7. 我應該始終初始化視圖模型對象嗎?
- 8. 我應該在更新的數據模型中使用hstore嗎?
- 9. 我可以在數據庫目錄中創建文件嗎?
- 10. 我應該在WEB.UI模型文件夾中進行驗證嗎?
- 11. 模型應該包含構建視圖所需的所有數據嗎?
- 12. 我應該在測試文件中創建助手方法嗎?
- 13. 我應該創建兩個不同的'類別'模型集嗎? Ruby on Rails
- 14. 我應該在Redis的Rails中創建一個新類嗎?
- 15. 我應該在本地創建一個大型數組嗎?
- 16. 我可以在創建視圖的模型中聽取bacbone視圖更改嗎?
- 17. 我們應該爲連接表模型創建制造商嗎?
- 18. 我應該爲每個模型創建一個接口嗎?
- 19. 應該在Zend Framework中爲查找表創建模型嗎?
- 20. 動畫線索應該在我的視圖模型中嗎? MVVM
- 21. 在SQL Server 2008中創建新數據庫時,FILEGROWTH設置應該從模型數據庫繼承嗎?
- 22. 在Rails模型中創建模型
- 23. 我可以在Rails中鎖定表嗎? (我應該嗎?)
- 24. 我應該爲lex函數創建一個頭文件嗎?
- 25. 我應該只爲少數幾行創建表格嗎?
- 26. 我應該創建C++中只有一個函數的子類嗎?
- 27. 我應該讓用戶在數據庫中創建表還是創建視圖?
- 28. 我應該從數據庫中只選擇有用的列嗎?
- 29. 從視圖中檢索數據,我應該使用模型綁定器嗎?
- 30. 我可以創建django模型,它不會在數據庫中保存嗎?
好吧我有名稱爲table1_data的表,a)模型類名稱b)模型文件名 - 應該是什麼樣子。謝謝。 – Ladiko