使用错误键在 blade 中显示错误

Displaying error in blade with error key

我正在 return 使用 return back()->withErrors() 方法处理自定义错误,完全像这样:

return back()->withErrors([
    'A' => 'XXX',
    'B' => 'YYY
])

现在,如果我可以在我的 blade 中使用 {{ dd($errors) }},它表明错误是这样 returned 的:

ViewErrorBag {#208 ▼
  #bags: array:1 [▼
    "default" => MessageBag {#209 ▼
      #messages: array:2 [▼
        "A" => array:1 [▼
          0 => "XXX"
        ]
        "B" => array:1 [▼
          0 => "YYY"
        ]
      ]
      #format: ":message"
    }
  ]
}

如果我尝试使用 {{ dd($errors->all()) }},它 return 是一个数组,但我不想通过数组访问它。

我想要的是能够使用它的键和 return 键的错误 {{ dd($errors->B) }}

实现此目标的正确方法是什么?

通过数组访问$errors['A']或通过

将数组转为对象
$errors = (object)$errors;

然后像$errors->A$errors->B

一样访问

控制器中这样写

redirect()->back()->withInput()->withErrors();

在模板中检查并键入例如 so

@if ($errors->has('name'))
   <span class="help-block">
       <strong>{{ $errors->first('name') }}</strong>
   </span>
@endif

此方法会自动重定向您按并显示错误

$data = $request->validate([
            'title' => 'required',
            'body' => 'required',
        ]);