我是使用laravel的新手。 我创建了删除功能,但是按我的意愿无法使用。这是视图中的代码,控制器以及路线。你们能告诉我代码有什么问题吗?谢谢
查看:
<div class="btn-group">
<a class="btn btn-info" href="{{ URL::to('/delete_data_tanah/{id}') }}">
<i class="fa fa-close"
onclick="return confirm('Are you sure you want to delete this data?');">----</i>
</a>
</div>
控制器:
public function delete($id){
\App\Tbl_object::where('id_objects', '=', $id)->delete();
return redirect('/list_tanah')->with('Success', 'Data telah dihapus');
}
路线:
Route::post('/delete_data_tanah/{id}', 'formulir_tanah@delete');
控制器:
class formulir_tanah extends Controller
{
public function index()
{
$query_tanah = \App\Tbl_object::where('id_objects_referencies', '=', '1')->get();
$query_view = \App\Tbl_view::where('id_objects_referencies', '=', '1')->get();
$data = ['page_title' => 'Kertas Kerja Penilaian Tanah', 'query_tanah' => $query_tanah, 'query_view' => $query_view];
return view('admin/list_tanah')->with($data);
}
}
答案 0 :(得分:0)
尝试一下:
在Blade.php中,将{id}
更改为{$data->id}
<div class="btn-group">
<a class="btn btn-info" href="{{ URL::to('/delete_data_tanah/{$data->id}') }}">
<i class="fa fa-close"
onclick="return confirm('Are you sure you want to delete this data?');">----</i>
</a>
然后在您的控制器中,添加id
变量:
class formulir_tanah extends Controller { public function index(){
//ambil semua data dari table categories
$query_tanah = \App\Tbl_object::where('id_objects_referencies', '=', '1')->first();
$query_view = \App\Tbl_view::where('id_objects_referencies', '=', '1') ->first();
$data = ['id' => $query_view->id, 'page_title' => 'Kertas Kerja Penilaian Tanah', 'query_tanah' => $query_tanah, 'query_view' => $query_view ];
return view('admin/list_tanah')->with($data);
}
您的代码不起作用,因为laravel不知道要删除哪一行,因为您的申报表中没有特定的id
。
答案 1 :(得分:0)
将这些更改应用于您的代码:
Route::delete('/delete_data_tanah/{id}', 'formulir_tanah@delete');
在您看来,您需要将按钮包装在表单中
<form action="{{ URL::to('/delete_data_tanah/{id}') }}" method="post">
@method('DELETE')
@csrf
<button class="btn btn-danger" type="submit">Delete</button>
</form>