我開始首次使用codeigniter並開始計劃編碼結構。codeigniter的應用程序範圍類
我有許多'對象'在整個應用程序中定期引用:用戶,文章,照片,評論,論壇主題等。這些對象將執行常見功能,如獲取/設置關於用戶,文章,照片,評論,主題等等。這些東西通常在每個控制器的某個點或另一個點上引用。
哪裏是正確的/最佳實踐的方式來存儲這些以及如何?
我開始首次使用codeigniter並開始計劃編碼結構。codeigniter的應用程序範圍類
我有許多'對象'在整個應用程序中定期引用:用戶,文章,照片,評論,論壇主題等。這些對象將執行常見功能,如獲取/設置關於用戶,文章,照片,評論,主題等等。這些東西通常在每個控制器的某個點或另一個點上引用。
哪裏是正確的/最佳實踐的方式來存儲這些以及如何?
一般而言,我會建議在控制器中構建您的方法,然後重構並將方法推送到模型中。然後在你的模型中重構。管制員說 - 做這個,像指揮官一樣揮揮手。它沒有說明如何去做,模型中的'如何'。
我剛剛正在學習的另一個建議是,從用戶角色的角度設計和構建應用程序 - 例如管理員,採購員,編輯等。不要將使用的工具CRUD在應用程序的中心。應用程序應該由用戶需要執行的操作來驅動。 '鮑勃叔叔'馬丁有一個很好的引用 - 如果你要求建築師向你展示一套房子的設計,他們不會回來一個工具列表,如錘子,鋸子和捲尺。而且這個架構設計並沒有涉及大量的實現細節。藍圖 - 或者你的物體設計 - 僅僅是爲了必要的。
它們通常應在您的庫或模型文件夾中。然後,我再也不能肯定地說,因爲我不知道這些物體是幹什麼的。如果你發佈更多的信息,那麼它會更容易。 – 2013-03-07 15:19:39
@crypticツ我已更新我的描述。 – David 2013-03-07 15:21:25
請參閱http://ellislab.com/codeigniter/user-guide/general/creating_libraries.html和http://ellislab.com/codeigniter/user-guide/general/models.html – 2013-03-07 15:24:51