gpt4 book ai didi

php - Laravel 使用 Request 对象重定向到 Controller 操作

转载 作者:行者123 更新时间:2023-12-04 21:14:18 27 4
gpt4 key购买 nike

在 Laravel 5.6 应用程序中,我有一个管理产品树的 Controller 。 getTree() 方法从数据库构建树,updateTree() 修改它。这两种方法都是通过 ajax 接受请求参数调用的:

Blade :

$.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");

Controller :

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() 运行后通过重定向到 Controller 操作来触发 getTree() 方法,但是这样我无法传递 getTree() 期望的 Request 对象。你会怎么做?预先感谢!

最佳答案

如果您查看 signature action 方法的第二个参数是参数。

所以你可以像这样传递参数:

return redirect()->action("TreeController@getTree", [$request]);

或者,您可以从 getTree 方法中删除 Request $request 参数,只使用类似 $request = request() 的方法/p>

关于php - Laravel 使用 Request 对象重定向到 Controller 操作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52761834/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com