Laravel 8 删除功能不会抛出错误但无法正常工作

Laravel 8 Delete function does not throw error but isn't working

当我按下删除按钮时,它成功地重定向了我,但没有删除数据库中的查询,我的代码如下: 路线:

Route::resource('v_users', VUserController::class);

控制器:

  public function destroy(request $request)
     {  
        
        v_users::destroy($request->id);
            session()->flash('delete');   
            return redirect()->route('v_users.index')
                        ->with('success','User deleted successfully');
    }

View.index:

 <form action="{{ route('v_users.destroy',$v_users->id) }}" method="POST">
   
                    <a class="btn btn-info" href="{{ route('v_users.show',$v_users->id) }}">View QR Code</a>
                    <br>
                    <a class="btn btn-primary" href="{{ route('v_users.edit',$v_users->id) }}">Edit</a>
                    <br>
                    @csrf
                    @method('DELETE')
      
                    <button type="submit" class="btn btn-danger">Delete</button>
                </form>

将模型 ID 注入路由或控制器操作时,您通常会查询数据库以检索与该 ID 对应的模型。因此,在您的路由文件中,您必须声明一个参数,例如 Route::get('/users/{v_user}', [UserController::class, 'delete'])

然后,在您的销毁方法中,您必须添加要注入的模型

public function destroy(Request $request, v_user $user)
{  

    $user->delete();
    session()->flash('delete');   

    return redirect()
            ->route('v_users.index')
            ->with('success','User deleted successfully');
}

路线

Route::resource('v_users', VUserController::class);

控制器

public function destroy(VUsers $v_users)
{  
    VUsers->delete();
    session()->flash('delete');   
    return redirect()->route('v_users.index')
           ->with('success','User deleted successfully');
}

blade

<form action="{{ route('v_users.destroy',$v_users->id) }}" method="POST">
   
    @csrf
    @method('DELETE')

    <button type="submit" class="btn btn-danger">Delete</button>
</form>