【Yii2】高級模板跨應用調用組件的最佳解決方案

項目需求

在Yii2的高級模板中,可以創建多個應用。

目前有兩個應用

  • 網站
  • 管理後臺

其中網站使用pageCache作爲緩存組件。

由於使用緩存組件,導致後臺的內容沒有及時更新,所以,需要在後臺創建模塊,手動刷新網站的緩存。

思路

使用網站配置文件在後臺註冊組件

也就是說,在緩存模塊上,直接註冊組件,再調用方法。

經過實踐,不可行

修改Yii.php在後臺項目註冊網站組件

由於改動比較大,沒有完成具體操作

解決方案

直接使用後臺模塊加載網站配置

具體思路如下

  1. 網站使用的路徑被註冊在common/config/bootstrip.php中,其他應用都可以引用
  2. 對於緩存組件,不同的就是緩存對應的路徑不同,被設定爲cachePath
  3. 只要調用緩存組件,配置cachePath,就能直接操作網站應用的緩存數據。

具體代碼

$cache = \Yii::$app
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章