我正在尝试将属性赋予视图(以便我可以在刀片中使用它们(,而在路线中仅需要ID。让我解释
我正在谈论的路线现在是Route::get('/order/{id}', 'OrderController@show');
,现在在该特定的显示方法中,我想返回带有$order
变量的视图,另一个称为$payment
的变量,该变量由一些信息组成。这样我就可以在刀片中使用它们。多数民众赞成在表现如下
public function show(Order $order, $payment)
{
return view('orders.show', compact('order', 'payment'));
}
在同一控制器中,我有一个存储方法,当执行该方法的所有内容时,它通过执行此操作将其重定向到Show方法
return $this->show($order, $payment);
但是,当执行商店方法并显示订单时。URL是order/26/store
而不是order/26
。大概是因为我使用
return view('orders.show', compact('order', 'payment'));
在表演方法中。
我如何制作它,以便我可以使用两个变量(刀片(,而路线看起来像"订单/26",而不是 order/26/store
我在谈论的两条路线都在这里列出。
Route::get('/order/{id}/store', 'OrderController@store')->name('storeOrder');
Route::get('/order/{id}', 'OrderController@show')->name('showConfirm');
如果您是用 - 归纳的控制器。拉拉维尔(Laravel(自己逐步制作所有路线。使用商店函数创建SMT后,它重定向show/{id}
在商店功能中,您必须指定路由。
存储功能
public function store(Request $request)
{
$order = Order::all();
return redirect()->route('order.show', $order->id);
}
功能显示
public function show($id)
{
return view('order.show');
}