我的路线怎么了?它无法重定向到InfosController中的我的edit-info
表单web.php
route::get('/info-admin/{$info}/edit','InfosController@edit');
info-admin.blade.php
@foreach ( $info as $infos )
<tr>
<th scope="row" class="align-middle">{{ $loop->iteration }}</th>
<td class="align-middle">{{ $infos->judul }}</td>
<td class="align-middle">{{ $infos->konten }}</td>
<td class="align-middle">{{ $infos->image }}</td>
<td class="align-middle">{{ $infos->created_at }}</td>
<td class="align-middle">{{ $infos->Updated_at }}</td>
<td class="align-middle form">
<a href="/info-admin/{{ $infos->id }}/edit"><button type="submit" class="btn btn-info mb-3">Edit</button></a>
<form method="POST" action="{{ route('infos.destroy', [$infos->id]) }}">
{{ csrf_field() }}
{{ method_field('DELETE') }}
<button type="submit" class="btn btn-danger">Hapus</button>
</form>
</td>
</tr>
@endforeach
InfosController @ edit
public function edit($id)
{
return view('admin.edit-info');
}
我做错了什么,为什么拉拉韦尔(Laravel)找不到我的路线?
您的路线定义错误。
route::get('/info-admin/{$info}/edit','InfosController@edit');
应该没有$
,并命名路由以便于链接。
route::get('/info-admin/{info}/edit','InfosController@edit')->name('infos.edit');
而不是硬编码,也像编辑链接上的destroy一样使用route。
<a href="{{ route('infos.edit', [$infos->id]) }}">
要检查路由定义是否正确,请尝试在项目中运行。
php artisan route:list