我的问题是我的 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')
{{ @Form::open(['route' => 'personnaliteCreerPost', 'files' => true]) }}
@include('personnalite.subviews.formInfosGenerales')
{{ Form::submit('Créer') }}
{{ @Form::close() }}
@include('personnalite.subviews.listePersonnalites')
@enduction
其他开箱即用的 laravel 表格和登录控制器...工作正常。
有人可以帮我解决这个问题吗?