我的问题是我的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表格和登录控制器…工作正常.
有人可以帮我解决这个问题吗?