kyrenator / query-cache
轻松缓存Eloquent集合
v1.0.1
2015-03-28 00:27 UTC
Requires
- php: >=5.4.0
- illuminate/support: 5.0.*
This package is not auto-updated.
Last update: 2024-09-14 17:31:55 UTC
README
重要声明:此包未维护,可能完全不工作。使用风险自负!!
Laravel 5查询缓存
此Laravel 5包允许您通过实现Laravel 4 remember方法轻松缓存Eloquent查询。
##如何使用 ###步骤1:通过Composer安装
composer require kyrenator/query-cache
###步骤2:在模型中使用QueryCache
<?php namespace App; use Kyrenator\QueryCache\QueryCache; use Illuminate\Database\Eloquent\Model; class Post extends Model { use QueryCache; }
###步骤3:在查询Eloquent时使用remember方法 当调用remember方法时,您可以指定查询要缓存的分钟数。如果您不指定分钟数,查询将缓存60分钟。
\App\Post::remember()->take(3)->get(); //use cache tags \App\Post::remember()->cacheTags('posts', 'fresh')->take(3)->get();
##更多功能 ###全局缓存 如果您想缓存特定模型的全部查询,可以在模型中简单地定义cacheAll变量。QueryCache将对所有模型查询应用remember方法。
<?php namespace App; use Kyrenator\QueryCache\QueryCache; use Illuminate\Database\Eloquent\Model; class Post extends Model { use QueryCache; protected $cacheAll = true; }
###更改时清除缓存 如果您想在创建、删除或更新现有模型时清除缓存,请定义$clearOnChange
<?php namespace App; use Kyrenator\QueryCache\QueryCache; use Illuminate\Database\Eloquent\Model; class Post extends Model { use QueryCache; protected $clearOnChange = true; }
###缓存标签 QueryCache将使用模型名称作为缓存标签。您也可以定义自定义缓存标签。
<?php namespace App; use Kyrenator\QueryCache\QueryCache; use Illuminate\Database\Eloquent\Model; class Post extends Model { use QueryCache; protected $clearOnChange = true; protected $cacheTags = 'fresh'; protected $cacheAll = true; }