在验证行中添加按钮

时间:2015-10-14 21:08:47

标签: php validation laravel-5.1

我刚开始使用laravel,我想知道是否有办法将链接/按钮放在验证行中。

例如,我创建了一个基本注册页面(遵循laravel文档)。当有人试图用错误的电子邮件注册帐户时(只有特定的电子邮件帐户将被直接注册,其他人将被列入等待名单),用户将收到一条错误消息,说明他们将被等待列表和按钮,如果他们想要在这个等待名单上。

这是我的代码:

Auth / AuthController

protected function validator(array $data)
{
    return Validator::make($data, [
        'firstname' => 'required|max:255',
        'lastname' => 'required|max:255',
        'username' => 'required|max:50|unique:users',
        'email' => 'required|email|max:255|unique:users|regex:/@student\.test\.be$/',
        'password' => 'required|confirmed|min:6',
    ]);
}

Validation.php //自定义验证语言行

'email' => [
        'unique' => 'This email is already already registered',
        'required' => 'Email is required.',
        'regex' => 'some text <button>want to be on the waitinglist?</button>',
    ],

然后有一个带有表单和错误消息的基本寄存器视图

@if (count($errors) > 0)
    <div class="alert alert-danger">
        @foreach ($errors->all() as $error)
            {{ $error }}
        @endforeach
    </div>
@endif

1 个答案:

答案 0 :(得分:1)

我认为您最好在自己的视图文件中执行此操作,如下所示:

@if (array_key_exists('regex', $errors->get('email')))
    some text <button>want to be on the waitinglist?</button>
@endif

修改

您还可以将{{ $error }}更改为{!! $error !!}以正确显示HTML。

@if (count($errors) > 0)
<div class="alert alert-danger">
    @foreach ($errors->all() as $error)
        {!! $error !!}
    @endforeach
</div>
@endif