当特定规则失败时,在重定向之后执行操作- Laravel验证


Doing things after redirect when specifik rule is failing - Laravel validation

我有一个注册表单,它是发送到一个控制器验证请求。

    // Validate request
    $this->validate($request, [
        'email' => 'email|required|unique:users,email,NULL,id,deleted_at,NULL',
        'zipcode' => 'digits:5|numeric|exists:zipcodes,zipcode,lat,NOT_NULL',
    ]);

我想做的事情,如果电子邮件已经被采取(唯一),而不是只是发送一个错误消息返回(只有唯一,而不是其他错误)。

最后我想做的是在重定向回到上一页(表单所在的地方)后打开一个模态。

我很感谢你提供的任何帮助。

您可以创建自定义验证规则,并尝试在闭包中完成您的工作:

public function boot()
{
    Validator::extend('foo', function($attribute, $value, $parameters, $validator) {
        // Do your stuff.
        return $value == 'foo';
    });
}