laravel save() returns 错误调用未定义的方法 stdClass::save()

laravel save() returns error Call to undefined method stdClass::save()

为什么 save() returns 在下面出现错误“调用未定义的方法 stdClass::save()”:

public function update($category,$route)
{
    $category = DB::table('categories')->where('id', $category)->first();
    $category->field = 'changed';
    $category->save();
    ...

在这里工作正常:

public function store()
{
    ...
    $category = new Category(request(array_column($table->fields, 'name')));
    $category->save();

我错过了什么?

DB 查询生成器,return std class 对象,因此该对象不包含方法 save 。 当您使用 eloquent 模型获取项目时,模型中的此 return 对象使方法保存为 eloquent 模型方法。