【发布时间】:2021-04-04 00:28:05
【问题描述】:
我是 Laravel 编程的新手。我已经搜索了很多关于删除功能的资源,但它不起作用。当我单击删除按钮时,它只显示 404 NOT FOUND。我正在使用 Laravel 7.0。希望你能帮我解决它。谢谢!
这里
/**
* Remove the specified resource from storage.
*
* @param int $id
* @return \Illuminate\Http\Response
*/
public function destroy($id)
{
$student = Student::find($id);
$student->delete();
return redirect('/');
}
这是我的路线:
Route::get('/delete/{id}','StudentController@destroy');
这是我的观点:
<table class="table thead-light">
<thead>
<tr>
<th scope="col">ID</th>
<th scope="col">Mã sinh viên</th>
<th scope="col">Khối</th>
<th scope="col">Tên lớp</th>
<th scope="col">Họ và Tên</th>
<th scope="col">Thầy/Cô giáo chủ nhiệm</th>
<th scope="col">Tính năng</th>
</tr>
</thead>
<tbody>
@foreach($students as $student)
<tr>
<th scope="row">{{ $student->id }}</th>
<td>{{ $student->student_id }}</td>
<td>{{ $student->grade }}</td>
<td>{{ $student->class }}</td>
<td>{{ $student->fullname }}</td>
<td>{{ $student->head_teacher }}</td>
<td id="functions">
<a href="#" class="btn btn-info">Xem hồ sơ</a>
<a href="{{ url('/edit/'.$student->id) }}" class="btn btn-warning">Sửa</a>
<a href='delete/{{ $student->id }}' class="btn btn-danger">Xóa</a>
</td>
</tr>
@endforeach
</tbody>
</table>
【问题讨论】:
-
尝试使用
Route::delete()。您正在向需要 DELETE 请求的方法发送 GET 请求。 Documentation -
<a href='delete/{{ $student->id }}',试试用斜杠前缀<a href='/delete/{{ $student->id }}'。