Php Laravel-请求验证在重定向时出错
我在http/requests中有一个自定义请求文件,用于处理验证 如果验证未通过,默认情况下,它应重定向返回视图中的Php Laravel-请求验证在重定向时出错,php,laravel,session,redirect,Php,Laravel,Session,Redirect,我在http/requests中有一个自定义请求文件,用于处理验证 如果验证未通过,默认情况下,它应重定向返回视图中的$errors(由\illumb\view\Middleware\ShareErrorsFromSession::class生成),并且我在调试时看到错误在会话中,但在代码为302的请求完成并生成200请求后,会话中的错误将丢失 什么可能导致此问题?谢谢 代码: 在控制器中尝试此操作,假设函数为create use Illuminate\Http\Request; public
$errors
(由\illumb\view\Middleware\ShareErrorsFromSession::class生成),并且我在调试时看到错误在会话中,但在代码为302
的请求完成并生成200
请求后,会话中的错误将丢失
什么可能导致此问题?谢谢
代码:
在控制器中尝试此操作,假设函数为create
use Illuminate\Http\Request;
public function create(Request $request){
$this->validate($request,[
'field'=>'required|present',
'another_field'=>'required|present',
]);
Post::create($request);
}
请注意,$this->validate(),如果出现验证错误,它会自动重定向回上一个url,并发送错误消息。
刀片
然后可以通过这种方式检查错误
@if($errors->has('fieldName'))
<small class="text-danger form-text">{{$errors->first('fieldName')}}</small>
@endif
@if($errors->has('fieldName'))
{{$errors->first('fieldName')}
@恩迪夫
将routes/web.php中的所有内容包装到“Route::group(['middleware'=>['web']],function(){”修复了该问题
我以为web.php文件中的所有内容都已分配给“web”中间件…您能给我们看看您的控制器吗?我们需要查看您的代码以解决您的问题添加代码。我的验证在http/requests中,因此我没有$this->validate()
@if($errors->has('fieldName'))
<small class="text-danger form-text">{{$errors->first('fieldName')}}</small>
@endif