CakePHP -如何简单地重置缓存的数据库模型

cxfofazt  于 2022-11-11  发布在  PHP
关注(0)|答案(4)|浏览(153)

我有几个基于CakePHP的应用程序,这基本上适用于所有的应用程序。当我的调试模式设置为0时(实时模式),每次我更新数据库结构,比如新的表和字段,那么只要我的应用程序使用这些,我总是得到默认的“发生内部错误”消息。如果我将debug设置为1,然后使用这些新字段,就可以解决这个问题。有没有更好的方法呢?我不想每次更新数据库时都启用调试和测试写入。而且/tmp/cache子文件夹是空的,所以我不知道它存储在哪里。

ubbxdtey

ubbxdtey1#

我写了一个函数来实现这个功能。

function clear_cache() {
    $cachePaths = array('js', 'css', 'menus', 'views', 'persistent','models');
    foreach($cachePaths as $config) {
        clearCache(null, $config);
    }
}

它使用Cake中的clearCache函数。

6za6bjd0

6za6bjd02#

您需要清除所有缓存配置

bin/cake cache clear_all

Source

g6baxovj

g6baxovj3#

对于cake 2.x,您可以像这样删除该高速缓存目录:

rm -rf app/tmp/cache/
mspsb9vt

mspsb9vt4#

对于CakePHP 2.x,将这行代码放在应用程序中的任意位置,以清除模型缓存:
Cache::clear(false, '_cake_model_');
这与低级缓存引擎(File、Memcache、Redis等)是分离的,因此它应该按原样工作。
CakePHP 2.x文档:快取

相关问题