我們正在研究一個Web應用程序。此應用程序基於PHP Codeigniter框架。我有一些數據庫根本不涉及的業務邏輯。我們只是處理客戶端輸入參數並返回結果。我們不確定是否應該在Model中放置這個業務邏輯(這是處理客戶端輸入而沒有數據庫交互),還是應該創建庫或幫助器?業務邏輯應該在何處不涉及數據庫?
請根據最佳編碼實踐給出建議。
我們正在研究一個Web應用程序。此應用程序基於PHP Codeigniter框架。我有一些數據庫根本不涉及的業務邏輯。我們只是處理客戶端輸入參數並返回結果。我們不確定是否應該在Model中放置這個業務邏輯(這是處理客戶端輸入而沒有數據庫交互),還是應該創建庫或幫助器?業務邏輯應該在何處不涉及數據庫?
請根據最佳編碼實踐給出建議。
您的客戶端輸入的是此處的數據,而不是數據庫,該概念仍然相同,因此應在模型中處理。
這是CodeIgniters文檔模型說:
模型是設計用來在 數據庫與信息的PHP類。例如,假設您使用CodeIgniter來管理 博客。您可能有一個模型類,其中包含可插入, 更新以及檢索博客數據的函數。 http://ellislab.com/codeigniter/user-guide/general/models.html
但是這個概念適用於所有數據。儘管CodeIgniter文檔。
中央組件模型由應用程序數據,業務規則,邏輯和函數組成。 http://en.wikipedia.org/wiki/Model%E2%80%93view%E2%80%93controller
模型將處理數據,控制器實質上接受模型的數據並將其傳遞/準備用於視圖。
我同意。數據庫僅與數據的持續性相關,正如AJReading所說,有幾個附屬方面是模型的一部分。 –
您的數據是客戶端輸入,因此可以用模型表示。而你的數據處理(業務邏輯)可以存儲在服務中。 –