我的路线有问题。当我调用“editPolicy”时,我不知道执行什么但不是方法 editPolicy。我想我在这两条路线之间遇到了问题:
Route::get('admin/edit/{user_id}', 'PolicyController@listPolicy')->name('listPolicy');
Route::put('/admin/edit/{policy_id}','PolicyController@editPolicy')->name('editPolicy');
我在 all.blade.php 视图中调用 listPolicy 路由,如下所示:
<a href="{{ route('listPolicy', $user->id) }}">{{ $user->name }}</a>
并在 edit.blade.php 视图中调用 editPolicy 路由,如下所示:
<a href="{{ route('editPolicy', $policy->id) }}" title="Remove" class="text-danger">Remove</a></td>
我的 PolicyController.php 是:
public function listPolicy($user_id)
{
$policies = Policy::where('user_id', $user_id)->get();
return view('admin/edit',compact('policies'));
}
public function editPolicy($policy_id)
{
dd($policy_id);
}
但是我不知道当我调用 editPolicy 路由但没有执行 editPolicy 方法时发生了什么。
请问有什么帮助吗?
此致
单击锚点将始终触发 GET 请求。route('listPolicy', $user->id)
并且route('editPolicy', $policy->id)
都将返回,admin/edit/{an_id}
因此当您单击锚点时,listPolicy
将被执行。如果要调用editPolicy
,则必须通过表单发送 PUT 请求,如使用Route::put
.
快速注意,您的两条路线具有相同的 URL,但似乎做的事情却大不相同,您应该区分它们以避免混乱。如果多个路由对相同的资源和不同的方法有影响,那么它们可以具有相同 url 的多个路由。例如用于显示、删除或更新相同的资源。查看文档。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句