我想這是我項目的最后一個問題。我在 1 個路由中有 2 個參數{locale}/projects/{id}/billings,問題是我在視圖中傳遞了 2 個參數值,但它仍然提示缺少必需參數的錯誤。這是我的代碼網頁.phpRoute::group(['prefix' => '{locale}', 'where' => ['locale' => '[a-zA-Z]{2}'], 'middleware' => 'setlocale'], function () { Route::get('/', function () { return view('welcome'); })->name('main'); Auth::routes(); Route::get('/home', 'HomeController@index')->name('home'); //Customers Route::get('/customers', 'CustomerController@showcust')->name('customers'); Route::post('/sendcust', 'CustomerController@sendcust')->name('sendcust'); //Items Route::get('/items', 'ItemController@showitems')->name('items'); Route::post('/senditem', 'ItemController@senditem')->name('senditem'); //Projects Route::get('/projects', 'ProjectController@showprojects')->name('projects'); Route::post('/sendproj', 'ProjectController@sendproj')->name('sendproj'); //ProjectBillings Route::get('/projects/{id}/billings', 'ProjectController@showbilling')->name('showbilling'); Route::post('/sendbilling', 'ProjectController@addbilling')->name('sendbilling'); //Invoices Route::get('/invoices', 'InvoiceController@showinvoice')->name('invoices'); Route::post('/sendinvoitem', 'InvoiceController@sendinvoitem')->name('sendinvoitem'); Route::get('/invoices/{id}/details', 'InvoiceController@showdetails'); Route::post('/updateitem','InvoiceController@updatedetail')->name('updateitem'); Route::get('invoices/{id}/generate', 'InvoiceController@generate'); Route::post('/updatestatus', 'InvoiceController@changestatus')->name('updatestatus');});項目.blade.php<a href="{{route('showbilling', ['locale' => app()->getLocale(), 'id' => $cat->id])}}" class="btn btn-default btn-xs waves-effect waves-float waves-green"> {{__('Add Billing')}} </a>項目控制器.phppublic function showbilling($locale, $id){ $billings = Project::find($id); //return $billings; return view('admin.addbillings', compact('billings'));}
2 回答

ABOUTYOU
TA貢獻1812條經驗 獲得超5個贊
更新
您將參數錯誤地傳遞給路由,您得到的錯誤是在路由器方法而不是控制器中生成的,正確設置路由器方法,它應該可以解決您的問題。
Route::prefix('{locale}')->middleware('setlocale')->group(function(){
Route::get('/projects/{id}/billings', 'ProjectController@showbilling')->name('showbilling');
})->where('locale' => '[a-zA-Z]{2}');
結果 URI /{locale}/project/{id}/billings

慕姐4208626
TA貢獻1852條經驗 獲得超7個贊
我認為你現在應該使用這個 URL:/{locale}/showbilling (例如:"as/showbilling") 而不是你現在使用的。{locale} 在路由器組中是有效的。所以,我猜你忘記了這個。
- 2 回答
- 0 關注
- 142 瀏覽
添加回答
舉報
0/150
提交
取消