我正在尝试使用以下代码
过滤缓存数据$Categories = \Cache::rememberForever('Categories', function() {
return \App\Models\Skill\Category_Model::all();
});
$Category = $Categories::where("CategoryID", "=", $id)->first();
错误详情:
非静态方法Illuminate \ Support \ Collection :: where()不应该是 静态调用,假设$ this来自不兼容的上下文
我错过了什么吗?
我的意思是,什么是过滤缓存对象中数据的最快方法。缓存对象是一个模型。 Categories Array包含包含categoryID ID的Models集合。我想根据CategoryID过滤数据
答案 0 :(得分:1)
您应该使用:
$Categories->where("CategoryID", $id)->first();
// or
$Categories->where("CategoryID", '=', $id)->first();
无法静态调用 where
。结帐课程Illuminate\Support\Collection
。
修改强>
您只能按照您尝试的方式在Eloquent模型上将其称为静态。因为你已经把结果提取到了Collection中。