我有一個關於我的應用程序碰到的衝突/難題的問題。基本類的問題被模型和控制器擴展
我想給我的所有模型和控制器提供一些常用的「東西」,比如來自緩存的數據或會話信息,以及我的PDO包裝器的方法。
當前,每個單獨的特徵控制器和特徵模型都擴展了一個基礎控制器和基礎模型,該基礎控制器和基礎模型又擴展了一個可以完成所有常見工作的單個對象。
控制器將被路由器/調度程序調用,然後控制器將調用模型來獲取一些數據。與此相關的問題是這意味着主對象被構造兩次:一次調用功能控制器時,一次當功能控制器調用特徵模型時。
見下圖:
很顯然,我做錯了什麼,所以我想知道是否有某種最佳實踐的解決了這個問題。
什麼我不想要的是必須通過控制器將對象加載到模型的東西。這意味着任何時候我必須爲Object添加一個新的通用元素,我必須將其傳遞給Model。
$ this-> cache或$ this-> db或$ this-> session在控制器和模型(以及未來的助手和misc類)中總是可用,這是非常簡單和容易的。
我該如何解決這個問題?
謝謝:)