laravel - 在 null Laravel 上调用成员函数 delete()
问题描述
当我想删除一个用户表时,它会说调用 null Laravel 上的成员函数 delete()。为什么??
这是代码:
网络路线:
//admin starts
Route::prefix('/a')->middleware('auth')->group(function () {
Route::get('/admin', 'AdminController@index')->name('admin.index');
Route::get('/overzicht', 'AdminController@overzicht')->name('admin.overzicht');
Route::get('/product/create', 'ProductController@create')->name('product.add');
Route::post('/product/create', 'ProductController@store')->name('product.store');
Route::get('/userlist', 'UsersController@list')->name('user.list');
Route::delete('/userlist/{id}', 'UsersController@destroy')->name('userlist.destroy');
Route::get('/userlist/{id}', 'UsersController@details')->name('user.details');
});
刀片列表:
<form class="form-group pull-right" action="{{ route('userlist.destroy', ['id' => $id->id])}}" method="post">
@method("DELETE")
@csrf
<button type="submit" onclick="return confirm('Are you sure?')" value="Delete" style="border: none"><i class="fa fa-trash" aria-hidden="true"></i></button>
模型:
protected $table = 'users';
控制器:
public function destroy($id)
{
// if ($id != null) {
// $id->delete();
// return redirect()->route('user.list');
// }
$userr = Dum::find($id);
$userr ->delete();
session()->flash('message', 'Delete Successfully');
return redirect()->route('user.list');
}
解决方案
只需确保您从数据库中获取模型实例:
public function destroy($id)
{
$userr = Dum::find($id);
if( $userr==null)
{
session()->flash('message', 'Deletion failed');
}
else
{
$userr ->delete();
session()->flash('message', 'Delete Successfully');
}
return redirect()->route('user.list');
}
推荐阅读
- css - 你如何在反应中 mpa 一个 json const 并设置它的样式?
- python - pip install mysql-python 失败,缺少 config-win.h
- stenciljs - 如何在 StencilJS 中使用 getter/setter 处理 @Prop() 逻辑
- c++ - 如何改进以下 lambda 函数以查找向量中的前 4 个元素
- asp.net - ChangePassword 控件忽略自定义模板并呈现默认值
- pandas - 如何从熊猫“编码”数据框的列
- excel - VBA 在 Excel 中创建带有表格和签名的电子邮件
- python - 如何使用参数获取和设置属性
- localization - Is it a good idea to cascade localization translation files?
- azure - Coexistence between Azure P2S VPN and Expressroute