2015-09-29 65 views
2

我有这个非常奇怪的错误。Laravel GET在POST表单上永久移动301

每当我尝试在这个特定的调用中使用表单时,它将自动执行一个与GET一样的完全相同页面的301调用。我不确定是什么导致了这一点,但我猜这是Laravel处理URL的方式。

比如我有:

<?php echo Form::open(array('url' => 'storage/remove/?page=' . $page)) ?> 

其中$页是一个_GET变量。

当我在FireBug中运行这个页面时,我发现它总是试图将它重定向到一个GET页面。

我的路线:

Route::any("storage/{id?}", array("uses" => "[email protected]", "before" => array("auth", "maintenance_check"))); 
Route::post("storage/remove", array("uses" => "[email protected]", "before" => array("auth", "csrf_check", "maintenance_check"))); 

有人可以让我知道我做错了此问题?

回答

0

增加可选{id}参数“捕捉”/remove段,因此路由器从不触发Route::post()。 您是否尝试在Route::any()之前放Route::post()

0

要添加方法post

<?php echo Form::open(array('url' => 'storage/remove/?page=' . $page, 'method' => 'post')) ?>