控制器没有得到更多的论据

时间:2016-12-01 11:41:18

标签: laravel laravel-5

我试图通过发布请求向控制器发送两个参数和一个请求。这是我发送参数的代码:

<form class="form-horizontal" name="form1"  method="post" action="{{ route('shipment_view', $uniqueid, $category_name) }}" role="form" enctype="multipart/form-data">

这是我发送参数的控制器:

    public function storeShipment(Request $request, $number, $category_name){

           $category = Category::where('category_name', $category_name)->first();
           $user = Auth::user();

           $item = new Item([

           'id' => $user->id,
           'category_id' => $category->id,
           'unq' => $number,
           'fullname' => $request->input('name'),
           ]);

           $item->save();
   }

但是当我打开视图时它会给我错误

ErrorException in NewShipmentController.php line 53:
Missing argument 3 for App\Http\Controllers\NewShipmentController::storeShipment()

更新

我的路线功能:

Route::post('/ship/preview/{number}',[
   'uses' => 'Controllerr@storeShipment',
    'as' => 'shipment_view'
]);

有什么想法吗?

2 个答案:

答案 0 :(得分:0)

您可以通过自己的请求获取所有参数但在此之前您如何定义路径

public function storeShipment(Request $request){

    $number = $request->number;
    $category_name = $request->number 
}

答案 1 :(得分:0)

用下面的

替换您的路线功能
 Route::post('/ship/preview/{number}/{category_name}',[
   'uses' => 'Controllerr@storeShipment',
    'as' => 'shipment_view'
]);

希望这能解决你的问题。