Laravel update model with unique validation rule for attribute

后端 未结 18 2217
春和景丽
春和景丽 2020-11-27 12:45

I have a laravel User model which has a unique validation rule on username and email. In my Repository, when I update the model, I rev

18条回答
  •  囚心锁ツ
    2020-11-27 13:08

    A simple example for roles update


    // model/User.php
    class User extends Eloquent
    {
    
        public static function rolesUpdate($id)
        {
            return array(
                'username'              => 'required|alpha_dash|unique:users,username,' . $id,
                'email'                 => 'required|email|unique:users,email,'. $id,
                'password'              => 'between:4,11',
            );
        }
    }       
    

    .

    // controllers/UsersControllers.php
    class UsersController extends Controller
    {
    
        public function update($id)
        {
            $user = User::find($id);
            $validation = Validator::make($input, User::rolesUpdate($user->id));
    
            if ($validation->passes())
            {
                $user->update($input);
    
                return Redirect::route('admin.user.show', $id);
            }
    
            return Redirect::route('admin.user.edit', $id)->withInput()->withErrors($validation);
        }
    
    }
    

提交回复
热议问题