美文网首页
laravel 数据库字段唯一性验证

laravel 数据库字段唯一性验证

作者: charmingcheng | 来源:发表于2020-05-09 08:49 被阅读0次

单字段验证唯一性

public function rules()
{
    $id = $this->route('member');

    $rules = [
        ...
        'phone' => 'required|unique:members,phone,'.$id,
    ];
        
    return $rules;
 }
    
public function messages()
{
    return [
        ...
        'phone.unique' => '手机号已经注册'
    ];
}

多字段验证唯一性

use Illuminate\Validation\Rule;

...
public function rules()
{
    $id = $this->route('member');
    $rules = [
        ...
        'phone' => [
            'required',
            Rule::unique('members')->where('lang', config('langs'))->
            where(function ($query){
                $query->where('phone', '!=', '')->where([
                  'phone' => $this->request->get('phone'),
                ]);
            })->ignore($id)
        ],
    ];
        
    return $rules;
 }

public function messages()
{
    return [
        ...
        'phone.unique' => '手机号已经注册',
    ];
}

相关文章

网友评论

      本文标题:laravel 数据库字段唯一性验证

      本文链接:https://www.haomeiwen.com/subject/wjlhnhtx.html