我有一个错误 缺少 [路线:updatetransaksi] [URI:penjualan/update/{id}] [缺少参数:id] 的必需参数。
网页代码
route::get('/penjualan/edit/{id_penjualan}', [PenjualanController::class, 'edit']); route::post('/penjualan/update/{id}', [PenjualanController::class, 'update'])->name('updatetransaksi');
控制器代码
public function edit(string $id_penjualan)
{
$penjualan = Penjualan::where('id_penjualan', $id_penjualan)->first();
$penjualan = DetailPenjualan::with('Penjualan', 'Barang')->where('id_penjualan', $id_penjualan)->get();
$penjualanData = Penjualan::with('pembeli', 'detailPenjualan.barang')->find($id_penjualan);
$pembeli = Pembeli::find($id_penjualan);
$barang = Barang::all();
return view('penjualan.edit', compact('penjualan', 'penjualanData', 'pembeli', 'barang', 'id_penjualan'));
}
public function update(Request $request, $id_penjualan)
{}
查看代码
<form action="{{ url('updatetransaksi', ['id' => $id_penjualan]) }}" method="POST">
如何解决这个错误
您的控制器方法和路由参数不匹配。您可以从此更改路线定义:
route::post('/penjualan/update/{id}', [PenjualanController::class, 'update'])->name('updatetransaksi')
对此:
route::post('/penjualan/update/{id_penjualan}', [PenjualanController::class, 'update'])->name('updatetransaksi')
或您的控制器功能定义:
public function update(Request $request, $id_penjualan)
对此:
public function update(Request $request, $id)
无论哪种方式都可以。