我想将用户名定义为4个字母+ 4个数字,例如“ abcd1234
”。这是我在Laravel 5中的代码:
public function rules()
{
return [
'username' => 'required|regex:/^[A-Za-z]{4}\d{4}$/|unique:users',
'email' => 'required|email|unique:users',
'password' => 'required|confirmed|min:8'
];
}
但是,正则表达式验证根本不起作用。如何解决这个问题呢?谢谢!
该代码是正确的。问题是在use App\Http\Requests\Request;
中遗漏了RegisterRequest.php
。
中的语句RegisterRequest.php
应如下所示:
<?php namespace App\Http\Requests\Auth;
use App\Http\Requests\Request;
class RegisterRequest extends Request {
/**
* Get the validation rules that apply to the request.
*
* @return array
*/
public function rules()
{
return [
'username' => 'required|regex:/^[A-Za-z]{4}\d{4}$/|unique:users',
'email' => 'required|email|max:255|unique:users',
'password' => 'required|min:8|confirmed',
];
}
}
最后,'username' => 'required|regex:/^[A-Za-z]{4}\d{4}$/|unique:users'
效果很好!
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句