首页 > 解决方案 > 当 $request->validate() 返回错误时使用会话消息重定向

问题描述

我正在使用控制器中的validate()方法验证表单。$request它可以工作,但是除了$errors变量中可用的错误消息之外,我想在警报组件中放置一个 Session 消息,我们通常with()在控制器方法结束时返回视图时使用该方法。但是,当该validate()方法返回错误时,我没有找到将会话消息发送给它的方法。

代码是这样的:

$request->validate([
  'name' => 'required',
  'cpf' => 'cpf|required',
  'email' => 'email|required',
  'data_de_nascimento' => 'date',
  'data_de_pagamento' => 'date',
  'modalidade' => 'required',
  'instrutor' => 'required',
  'avaliacao' => 'file|required',
);

我希望该validate()方法返回一个带有这些参数的会话:

'message' => [
  'content' => 'Check the mistaken information!',
  'type' => 'danger',
]

可能吗?或者我应该使用 Validator 类?

标签: phplaravel

解决方案


使用 Validator 类手动验证是一种方法。另外,您可以检查

@if ($errors->any())
  <div class="alert alert-danger">Check the mistaken information!</div>
@endif

推荐阅读