Au sein d'un ensemble Laravel j'ai fait, je veux rediriger l'utilisateur vers une action de contrôleur qui nécessite un paramètre (dans le même package).
Manette:
public function postMatchItem(Request $request, $id)
{
$this->validate($request, [
'item_match' => 'required|numeric|exists:item,id',
]);
$spot_buy_item = SpotBuyItem::find($id);
$item = Item::find($request->input('item_match'));
$price = $item->getPrice();
$spot_buy_item_response = new SpotBuyItemResponse();
$spot_buy_item_response->spot_buy_item_id = $id;
$spot_buy_item_response->spot_buy_id = $spot_buy_item->spot_buy_id;
$spot_buy_item_response->item_id = $item->id;
$spot_buy_item_response->user_id = $spot_buy_item->user_id;
$spot_buy_item_response->spot_buy_price = $price;
$spot_buy_item_response->created_ts = Carbon::now();
$spot_buy_item_response->save();
return redirect()->action('Ariel\SpotBuy\Http\Controllers\Admin\[email protected]', [$id]);
}
L'action dans la redirection est le même chemin que je l' utilise dans mon routes.php
fichier pour diriger l'utilisateur à cette action du contrôleur
Route:
Route::get('/part/{id}', 'Ariel\SpotBuy\Http\Controllers\Admin\[email protected]')->where('id', '[0-9]+');
J'ai essayé des variations de ce chemin sans succès, y compris [email protected]
comme la documentation suggère ( https://laravel.com/docs/5.1/responses#redirects )
Notez : Je suis arrivé que cela fonctionne en nommant mon itinéraire en routes.php
et à l' aide return redirect()->route('route_name', [$id]);
, mais je veux toujours savoir comment passer une action de contrôleur de package à la ->action()
fonction.