美文网首页
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