Laravel - 检查命名错误包的名称

Sun*_*mar 5 php laravel laravel-validation

我的注册表单和登录表单在同一页面上,但在不同的选项卡中。默认情况下,活动选项卡是登录。在注册时,如果有任何错误,则会返回错误消息,我可以使用命名错误包在正确的位置打印错误消息。

问题是当错误来自注册表时,活动选项卡应该是注册。为此,我需要检查 laravel 验证的名称。

我怎样才能做到这一点??

验证代码为:

if ($validator->fails()) {
    return back()
    ->withErrors($validator, 'register')
    ->withInput();
}
Run Code Online (Sandbox Code Playgroud)

Jon*_*hon 6

您可以尝试使用变量->hasBag()上的方法$errors来检查给定键是否存在包,这将允许您输出相关的 CSS 类或显示正确选项卡所需的任何内容。例如:

<div class="tab registration{!! $errors->hasBag('register') ? ' active' : '' !!}">

</div>
Run Code Online (Sandbox Code Playgroud)

hasBag('register')true如果注册表中存在错误包,则将返回,假设您已设置验证以定义用于注册错误的包。这将允许您选择正确的选项卡。