2017-02-18 79 views
0

我在名为AssetController的控制器中有更新操作。更新后Laravel重定向

在动作我做return \Redirect::route('asset.edit', array($id));

在我的路由我有Route::resource('asset', 'AssetController');

年底当我发布到更新操作需要我“/资产/ 8”(8是的id资产记录)。我希望它转到“/ asset/8/edit” - 换句话说就是简单地将用户返回到他们刚刚提交用于更新的编辑表单。

我也试过return \Redirect::back()但也发送给“/资产/ 8” - 甚至认为他们只是提交页面的URL是“/资产/ 8 /编辑”。

为什么这不起作用?

回答

0

我发现这个问题。我的返回是在一个DB :: transaction()中,因此它忽略了它。

一旦我把它放在DB :: transaction()函数之外,我的原始返回语句正常工作。

0

注册您兜售这样的:

Route::resource('asset', 'AssetController', ['names' => [ 'edit' => 'asset.edit ]]); 

然后使用您的重定向:

\Redirect::route('asset.edit', array($id)); 
+0

这不是必须的 - 它在我的代码中工作得很好。我的错误是重定向发生在db:transaction()函数中。一旦我把它放在函数之外,它就可以在没有任何代码改变的情况下工 – circle1