php – Laravel 5.2 Post 302重定向到GET

我的问题是我的POST请求总是在错误302之后重定向到GET

这是我的路线文件:

Route::auth();
...
Route::post('/personnalite/creer', 'PersonnaliteController@creerPost')->name('personnaliteCreerPost');
Route::get('/personnalite/creer', 'PersonnaliteController@creerGet')->name('personnaliteCreerGet');
...

当我删除get route befort发布时,laravel路由失败.
我可以在我的web brouter开发工具中重定向之前看到发布请求

这是我的middelware,它在’web’middelwareGroups中注册.
它只是检查路由是否允许用户角色(ACL规则在配置文件中注册)

class MyAclMiddleware {
    public function handle($request, Closure $next) {
        $myAcl = App::offsetExists('MyAcl') ? App::make('MyAcl') : null;
        if($myAcl) {
            if(Auth::guest()) {
                $myAcl->setRole(0);
            } else {
                $myAcl->setRole(Auth::user()->role);
            }
            if($myAcl->isNotAllowed('route.' . Route::getRoutes()->match($request)->getName())) {
                return redirect()->route('erreur', ['id' => 0]);        
            }
        }
        return $next($request);
    }
}

这是我的表单刀片模板:

@extends('layouts.app')
@section('content')
    <div class="row">
        <div class="col-md-10 col-md-offset-1">
            <div class="panel panel-default">
                <div class="panel-heading">Créer une personnalité politique</div>
                <div class="panel-body">
                    {{ @Form::open(['route' => 'personnaliteCreerPost', 'files' => true]) }}
                        @include('personnalite.subviews.formInfosGenerales')
                        {{ Form::submit('Créer') }}
                    {{ @Form::close() }}
                    @include('personnalite.subviews.listePersonnalites')
                </div>
            </div>
        </div>
    </div>
@enduction

其他开箱即用的laravel表格和登录控制器…工作正常.

有人可以帮我解决这个问题吗?

最佳答案 解决了 !

问题是由于我的控制器中的错误表单验证逻辑(测试不足=>没有表单验证=>重定向到以前的表单)

对我感到羞耻

点赞