[英]Laravel redirect to controller action with Request object
在Laravel 5.6應用程序中,我有一個控制器來管理產品樹。 getTree()方法從數據庫構建樹,updateTree()對其進行修改。 這兩種方法都是通過接受請求參數的ajax調用的:
刀:
$.get("{{ URL::to('api/gettree') }}", {
data: $("#data").val()
}, function(response) { ... });
$.post("{{ URL::to('api/updatetree') }}", {
data: $("#data").val()
}, function(response) { ... });
路線:
Route::get("/gettree", "TreeController@getTree");
Route::post("/updatetree", "TreeController@updateTree");
控制器:
class TreeController extends Controller
{
public function updateTree(Request $request)
{
... process $request->input() ...
return redirect()->action("TreeController@getTree");
}
public function getTree(Request $request)
{
...
return view("admin.partials.itemtree", compact("data"));
}
...
}
我想要實現的是在updateTree()運行后通過重定向到控制器操作來觸發getTree()方法,但是這種方式使我無法傳遞getTree()期望的Request對象。 您將如何處理? 預先感謝!
如果簽出action
方法的簽名 ,則第二個參數用於參數。
因此,您可以像這樣傳遞參數:
return redirect()->action("TreeController@getTree", [$request]);
另外,您可以從getTree
方法中刪除Request $request
參數,而只需使用類似$request = request()
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.