Laravel destroy 不会从数据库中删除数据
Laravel destroy won't delete data from database
尝试使用 Laravel 5.4 中的以下内容从数据库中删除条目,但没有成功。
我的观点
{!! Form::open(['method' => 'DELETE', 'route' => ['faculty.delete', $faculty->id]]) !!}
<button type="submit" class="btn btn-danger btn-sm">Delete</button>
{!! Form::close() !!}
我的路线
Route::delete('faculty/delete/{id}', 'FacultyController@destroy')->name('faculty.delete');//delete faculty
我的控制器
public function destroy(Faculty $faculty)
{
//Log::info($faculty);
$faculty->delete();
return redirect('faculties/faculty');
}
控制器中的 log
returns 当我允许它 运行 时为空值。
问题是代码没有从 table 中删除项目。
您需要将 faculty/delete/{id}
更改为 faculty/delete/{faculty}
。
Laravel 自动解析在路由或控制器操作中定义的 Eloquent 模型,其类型提示变量名称与路由段名称匹配。
由于 $faculty
变量被类型提示为 App\Faculty
Eloquent 模型并且变量名称匹配 {faculty}
URI 段,Laravel 将自动注入具有与请求 URI 中相应值匹配的 ID 的模型实例。如果在数据库中没有找到匹配的模型实例,将自动生成 404 HTTP 响应。
尝试使用 Laravel 5.4 中的以下内容从数据库中删除条目,但没有成功。
我的观点
{!! Form::open(['method' => 'DELETE', 'route' => ['faculty.delete', $faculty->id]]) !!}
<button type="submit" class="btn btn-danger btn-sm">Delete</button>
{!! Form::close() !!}
我的路线
Route::delete('faculty/delete/{id}', 'FacultyController@destroy')->name('faculty.delete');//delete faculty
我的控制器
public function destroy(Faculty $faculty)
{
//Log::info($faculty);
$faculty->delete();
return redirect('faculties/faculty');
}
控制器中的 log
returns 当我允许它 运行 时为空值。
问题是代码没有从 table 中删除项目。
您需要将 faculty/delete/{id}
更改为 faculty/delete/{faculty}
。
Laravel 自动解析在路由或控制器操作中定义的 Eloquent 模型,其类型提示变量名称与路由段名称匹配。
由于 $faculty
变量被类型提示为 App\Faculty
Eloquent 模型并且变量名称匹配 {faculty}
URI 段,Laravel 将自动注入具有与请求 URI 中相应值匹配的 ID 的模型实例。如果在数据库中没有找到匹配的模型实例,将自动生成 404 HTTP 响应。