![](/img/trans.png)
[英]Facade\Ignition\Exceptions\ViewException Missing required parameters for [Route: trainingcategories.update]
[英]Laravel 7 multi parameter route error: Facade\Ignition\Exceptions\ViewException Missing required parameters for Route
我的小項目在 Laravel 5.8 中,我決定使用復制粘貼控制器、模型、路線和...將其升級到 Laravel 7。
一切都很好,但是對於 route 有一個 Associated 數組,我給出了這個錯誤:
Facade\Ignition\Exceptions\ViewException
Missing required parameters for [Route: admin-user-login] [URI: admin/users/{user}/login]. (View: /home/hamidreza/projects-tmp/laravel7/resources/views/admin/ads-index.blade.php)
路線:
Route::get('users/{user}/login', 'AdminUserController@login')->name('admin-user-login');
刀片模板中的錯誤部分:
{{ route('admin-user-login', ['user_id' => $ad->user_id]) }}
但如果我像這樣使用索引數組,它會起作用:
{{ route('admin-user-login', [$ad->user_id]) }}
或者這個:
{{ route('admin-user-login', $ad->user_id) }}
我只需要關聯數組,專門用於多參數路由。
您在web.php
中的路線等待名為user
的參數,但是您為其設置了user_id
參數,它會為您拋出異常。
在你的情況下應該是這樣的:
// config/web.php Route::get('users/{user}/login', 'AdminUserController@login')->name('admin-user-login');
之后,在您的 controller 中:
route('admin-user-login', ['user' => $user]);
或者:
$user = User::findOrFail($user_id); route('admin-user-login', compact('user'));
或在刀片模板中: {{ route('admin-user-login', ['user' => $user]) }}
Laravel 文檔中的更多信息: https://laravel.com/docs/7.x/routing#named-routes
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.