Php 从laravel 4中删除分页缓存
我正在使用此代码缓存分页Php 从laravel 4中删除分页缓存,php,caching,pagination,laravel-4,Php,Caching,Pagination,Laravel 4,我正在使用此代码缓存分页 Album::remember(3)->paginate(20); 但是我不知道如何在过期之前从分页中删除缓存。有人能帮忙吗。你通常不能“忘记”数据库缓存,因为你需要知道用作密钥的哈希 您可以使用getCacheKey()方法检索它(定义如下): 差不多 $results = Album::remember(3)->paginate(20); $key = Album::getCacheKey(); Cache::forget($key); 可以工作,但
Album::remember(3)->paginate(20);
但是我不知道如何在过期之前从分页中删除缓存。有人能帮忙吗。你通常不能“忘记”数据库缓存,因为你需要知道用作密钥的哈希
您可以使用getCacheKey()方法检索它(定义如下):
差不多
$results = Album::remember(3)->paginate(20);
$key = Album::getCacheKey();
Cache::forget($key);
可以工作,但我承认我从未使用过此过程,我倾向于为memory()
方法分配一个自定义键,并使用它来忘记它:
Album::remember(3, 'pagination')->paginate(20);
Cache::forget('pagination');
使用Album::Memory(3,'分页')->paginate(20)返回空数据。其中,好像我删除了自定义键,然后它返回完整的数据集。有什么解决方法吗?嗯,它是用->get()而不是->paginate()工作的吗(我以前在这方面有问题)?您尝试过getCacheKey()方法吗?如果您使用的驱动程序不是文件或数据库,则可以使用标记进行缓存并刷新它们
Album::remember(3, 'pagination')->paginate(20);
Cache::forget('pagination');