1

我正在使用 laravel-jsValidation,https: //github.com/proengsoft/laravel-jsvalidation,除了唯一规则外一切正常!这是我所拥有的: 规则:

protected $userValidate=[
          'lastname' => 'required|max:100|min:2',
          'firstname' => 'max:100|min:2',
          'username' => 'required|unique:users|min:2',
          'email' => 'required|unique:users|email|max:255',
          'password' => 'required|confirmed|min:6',  ];

获取用户列表功能:

public function getUsers(){
  $validator = JsValidator::make($this->userValidate);      
  return view('admin.usersList')->withValidator($validator);}

存储功能:

public function store(Request $request){   
  $data = $request->all();

  $v = Validator::make($data, $this->userValidate);           

  if ($v->fails())
  {
      return redirect()->back()->withErrors($v->errors());          
  }  

  $user = User::create([
        'lastname' => $data['lastname'],
        'firstname' => $data['firstname'],
        'username' => $data['username'],
        'email' => $data['email'],                        
        'password' => bcrypt($data['password']), 
        'confirmed' => 1,                 
    ]);       

  return redirect('admin/usersList');}

问题是当我输入用户名或电子邮件时,在表单输入下会出现一条错误消息:

哎呀,看起来像出事了。

注意:我设置:'disable_remote_validation' => false, 当我将其更改为时true,只有当我输入用户表中不存在的用户名和电子邮件时它才能正常工作!

我的代码有什么错误?

在此处输入图像描述

4

4 回答 4

1

我是laravel-jsvalidation包的维护者。此问题已在1.3.0 版中修复

规则UniqueActiveURLExists和自定义验证是自动验证的。只需启用它

 'disable_remote_validation' => false,
于 2015-12-29T20:54:37.283 回答
0

唯一验证需要表名后的列名。我假设您的列名email在数据库中。您的电子邮件规则应如下所示:

'email' => 'required|unique:users,email|email|max:255',
于 2015-12-23T19:29:05.293 回答
0
return [
            'name' => 'required',
            'email' => 'required|email|unique:`admin_users`,email',
            'phone' => 'required|unique:admin_users,phone',
            'password' => 'required|min:6|max:16'
        ];
于 2021-07-16T15:06:58.053 回答
-1

我认为问题是:这个包不支持远程验证,我可以在 Config/jsValidation.php 中看到:

/* * 启用或禁用数据库和自定义规则的 Ajax 验证。* 默认情况下,Unique、ActiveURL、Exists 和自定义验证通过 AJAX 进行验证 */ 'disable_remote_validation' => false,

那么如何通过 AJAX 验证此规则?请问有教程吗?

于 2015-12-24T08:54:16.407 回答