[英]Eloquent delete not working in laravel 5.6
這是我的代碼:
路線
Route::resource('ItemName', 'ItemNameController');
控制者
public function destroy(ItemName $itemName)
{
$itemName->delete();
return redirect('ItemName')->with('success', 'Item Has Been Delete');
}
視圖
<form action="{{ route('ItemName', $ItemName->id) }}" method="post">
@csrf
@method("DELETE")
<input type="submit" class="btn btn-danger btn-sm" href="{{ $ItemName-
>id }}" value="Delete" onclick="return confirm('Are You Sure To Delete
This Item? #{{ $ItemName->inc }} ')">
</form>
問題是代碼無法刪除表中的項目,有幫助嗎? 謝謝
在您的控制器中嘗試
public function destroy($id)
{
ItemName::destroy($id);
return redirect('ItemName')->with('success', 'Item Has Been Delete');
}
或者你可以嘗試
public function destroy($id)
{
$itemName = ItemName::find($id);
$itemName ->delete();
return redirect('ItemName')->with('success', 'Item Has Been Delete');
}
像這樣更改您的視圖代碼
<form action="{{ route('ItemName', $ItemName->id) }}" method="post" onSubmit="return confirm('Are You Sure To Delete
This Item? #{{ $ItemName->inc }} ')">
@csrf
@method("DELETE")
<button class="btn btn-danger btn-sm">Delete</button>
</form>
或者,您也可以設置類似action="url('/ItemName/'. $ItemName->id)"
試試這個,所以我的刀片是
<a href="{{url('path.'/'.$row->id.'/soft-delete')}}" class="btn btn-sm btn-danger"> <i class="fa fa-trash-o"></i> </a>
然后控制器是
public function soft_delete($id)
{
if($this->data->find($id)->delete()) {
return redirect()->back()->with('success', 'Your data has been moved to trash');
}else {
return redirect()->back()->with('error', 'Your data has not been moved to trash.');
}
}
我的路線是
Route::get('path/{id}/soft-delete', 'EventController@soft_delete');
如果您想要軟刪除,請使用軟刪除,否則無需使用
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.