为什么删除和销毁方法不删除模型 - laravel
我试图从数据库中删除记录我不得不写这样的代码:为什么删除和销毁方法不删除模型 - laravel
Route::get("/delete-student/{id}" , function ($id)
{
$student = \App\Student\Student::find($id);
$success = $student->delete();
return ["success" => $success];
});
结果是ture
但记录仍然在数据库中,我也尝试过这
$student = \App\Student\Student::destory($id);
,但仍然没有被删除
这里的战绩是我的学生模型
class Student extends Model
{
protected $table = "student";
}
我想你可以试试这个:
Route::get("/delete-student/{id}" , function ($id)
{
$student = \App\Student\Student::find($id);
$success = $student->forceDelete();
return ["success" => $success];
});
希望这对你的工作!
同样的问题,返回'真实',但记录仍然没有删除 –
我已经运行到了同样的问题,这个问题是因为列在我的架构名称
laravel假定每个表都有,如果命名主键列“ID”, 所以的主键是不相同的“ID”小写你应该重写通过添加$primaryKey
属性模型这样
protected $primaryKey = “YOUR_EXACT_KEY” ; //in my case was “Id”
感谢我的朋友,解决问题,我的主键叫做“ID” –
不客气我的朋友 – Ali
而不是寻找和删除你可以直接删除行如下
Route::get("/delete-student/{id}" , function ($id)
{
$success = \App\Student\Student::where('id',$id)->delete();
return ["success" => $success];
});
这会在你的情况下工作。
如果你想在1行,你可以摧毁它而不检索模型:\ App \ Student \ Student :: destroy($ id); –
你是否在学生模型中使用softdelete? –
@AddWebSolutionPvtLtd否 –
@ EmadAl-Kabi你有没有检查过'$ student'对象值?它有价值与否? –