我尝试使用以下方法删除特定的缓存数据:
Cache::forget('key');
也尝试了
Cache::pull('key');
但缓存仍然存在于DB
中注意:我使用的是数据库缓存和Laravel 5.1.7
答案 0 :(得分:2)
我找到了答案,问题发生了,因为我使用func imagePickerController(picker: UIImagePickerController, didFinishPickingImage image: UIImage!, editingInfo: [NSObject : AnyObject]!) {
photoImageView.image=image;
}
从数据库复制cache
密钥,而Laravel通常会添加另一个prefix
,而且它永远不会匹配
答案 1 :(得分:0)
尝试 php artisan cache:clear
在命令行上
答案 2 :(得分:0)
如果有人需要它,我的问题是由于文件许可权。因此,您可以在项目chmod -R 755 .
的根目录中尝试此命令。但是,我做了chmod -R 777 .
,但是不建议这样做。
答案 3 :(得分:0)
作记录:如果您使用的是cache tags,则forget
方法将不起作用。这是我设法解决的问题:
$cache_key = "MY_CACHE_KEY";
$cache_tags = ["MY_CACHE_TAG"]; //SOMETIMES I USE MULTIPLE TAGS
if (\Cache::tags($cache_tags)->has($cache_key)) {
\Cache::tags($cache_tags)->forget($cache_key);
$results = "CACHE item " . $cache_key . " forgotten";
} else {
$results = "Key " . $cache_key . " IS NOT CACHED";
}