【Yii2】高级模板跨应用调用组件的最佳解决方案

举报
小雨青年 发表于 2022/03/29 00:04:13 2022/03/29
【摘要】 项目需求 在Yii2的高级模板中,可以创建多个应用。 目前有两个应用 网站 管理后台 其中网站使用pageCache作为缓存组件。 由于使用缓存组件,导致后台的内容没有及时更新,所以,需...

项目需求

在Yii2的高级模板中,可以创建多个应用。

目前有两个应用

  • 网站
  • 管理后台

其中网站使用pageCache作为缓存组件。

由于使用缓存组件,导致后台的内容没有及时更新,所以,需要在后台创建模块,手动刷新网站的缓存。

思路

使用网站配置文件在后台注册组件

也就是说,在缓存模块上,直接注册组件,再调用方法。

经过实践,不可行

修改Yii.php在后台项目注册网站组件

由于改动比较大,没有完成具体操作

解决方案

直接使用后台模块加载网站配置

具体思路如下

  1. 网站使用的路径被注册在common/config/bootstrip.php中,其他应用都可以引用
  2. 对于缓存组件,不同的就是缓存对应的路径不同,被设定为cachePath
  3. 只要调用缓存组件,配置cachePath,就能直接操作网站应用的缓存数据。

具体代码

$cache = \Yii
  
 

    文章来源: coderfix.blog.csdn.net,作者:小雨青年,版权归原作者所有,如需转载,请联系作者。

    原文链接:coderfix.blog.csdn.net/article/details/107180231

    【版权声明】本文为华为云社区用户转载文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
    • 点赞
    • 收藏
    • 关注作者

    评论(0

    0/1000
    抱歉,系统识别当前为高风险访问,暂不支持该操作

    全部回复

    上滑加载中

    设置昵称

    在此一键设置昵称,即可参与社区互动!

    *长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

    *长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。