我想用 laravel 编辑讲师数据。但是,我收到 404 未找到错误。 这是我使用的路线
Route::controller(DosenController::class)
->prefix('dosen')
->middleware(['auth'])
->group(function () {
Route::get('/', 'index')->name('dosen.index');
Route::get('/tambah', 'create')->name('dosen.create');
Route::post('/tambah', 'store')->name('dosen.store');
Route::get('/detail/{id}', 'show')->name('dosen.detail');
Route::get('/edit/{id}', 'edit')->name('dosen.edit');
Route::put('/edit/{id}', 'update')->name('dosen.update');
Route::delete('/hapus/{id}', 'destroy')->name('dosen.delete');
Route::get('pdf', 'exportpdf')->name('dosen.pdf');
});
这是讲师控制器
public function edit($id)
{
$dosen = Dosen::findOrFail($id);
dd($id);
return view('dosen.edit', compact('dosen'));
}
这就是景色
<button class="action" style="background: #ff8200">
<a href="{{ route('dosen.edit', $dosen->id) }}" style="color: inherit">
<i class='bx bxs-edit'></i>
Edit
</a>
</button>
我已经完成了骰子和转储。但是,收到错误 404 消息。我应该怎么办?我也要换型号吗?
404错误,表示找不到所请求的路由。该问题与您的视图中如何生成编辑路线链接有关。
你的观点应该是这样的
<button class="action" style="background: #ff8200">
<a href="{{ route('dosen.edit', $dosen->id) }}" style="color: inherit">
<i class='bx bxs-edit'></i>
Edit
</a>
</button>
你的路线可以做到这一点:
Route::get('/dosen/edit/{id}', 'edit')->name('dosen.edit');
您的情况
Route::controller(DosenController::class)
->prefix('dosen')
->middleware(['auth'])
->group(function () {
Route::get('/edit/{id}', 'edit')->name('dosen.edit');
});
您的控制器:
public function edit(Dosen $dosen)
{
return view('dosen.edit', compact('dosen'));
}
用于手动检查 URL 确保您正在访问的 URL 与路由文件中定义的路由匹配。在您的情况下,URL 应该类似于 /dosen/edit/{id}。