过滤缓存数据时出错:Laravel 5.2

Error while filtering the Cache Data : Laravel 5.2

我正在尝试使用以下代码过滤缓存数据

$Categories = \Cache::rememberForever('Categories', function() {
    return \App\Models\Skill\Category_Model::all();
});

$Category = $Categories::where("CategoryID", "=", $id)->first();

错误详细信息:

Non-static method Illuminate\Support\Collection::where() should not be called statically, assuming $this from incompatible context

我错过了什么吗?

我的意思是,过滤缓存对象中数据的最快方法是什么。缓存对象是一个模型。 Categories 数组包含包含 categoryID ID 的模型集合。我想根据 CategoryID

过滤数据

你应该使用:

$Categories->where("CategoryID", $id)->first();
// or
$Categories->where("CategoryID", '=', $id)->first();

where 不能静态调用。签出 class Illuminate\Support\Collection.

编辑:

您只能按照您尝试的方式在 Eloquent 模型上将其称为静态。并且因为您已经获取了结果(进入集合)。