繁体   English   中英

Laravel Eloquent不适用于Cache

[英]Laravel Eloquent doesn't work with Cache

我正在尝试在模型的laravel中缓存查询。 我的代码是:

foreach(Building::where('village', '=', $village->id)->get() as $building)
            {

所以我这样做是这样的:

$buildingCache = Cache::remember('test123456', 60, function()
{
    return Building::where('village', '=', $id)->get();
});
foreach ($buildingCache as $bjdkfjksk)...............

并且出现一个奇怪的错误:

Undefined variable: id

但是我确定这个var是定义好的,我之前用过...

奇怪,不是吗?

如果使用闭包,则需要添加use以在闭包内使用任何变量,方法是:

$buildingCache = Cache::remember('test123456', 60, function() use ($id)
{
    return Building::where('village', '=', $id)->get();
});

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM