2016-07-07 75 views
0

我有一个使用Laravel 5.2编写的应用程序。如何在Laravel中使用remember()方法来使用查询生成器来缓存查询?

在许多情况下,我使用查询生成器来构建我的查询,像这样

DB::connection('custom')->table('user') 
->join 
..... 
->where(
........->get(); 

我如何使用方法remember()缓存来自查询生成器生成的查询?

我尝试了get()之前使用->remember(60)但是这是给我的错误

调用未定义的方法照亮\数据库\查询\生成器::记()

回答

2

你应该做的这

$value = Cache::remember('users', 60, function() 
    { 
    return DB::table('users')->get(); 
}); 
+0

我认为'用户'是缓存的关键,对吧?如果是的话,应该以某种方式独特地查询相同的检索? – Jaylen

+0

它deverands,更改用户之前,60 ...追加一个id或时间或任何套件您的情况 –

+0

因为我从查询生成器生成。没有办法将绑定值作为关键字使用实际查询吗? toSql的方法不包括绑定值 – Jaylen

相关问题