2017-12-12 19 views
0

電子メールが重複しないように、要求にユニークなルールを使用しています。私は投稿ユーザーの電子メールを無視する方法を説明しましたが、何のユーザへの変更を行う作る権限を持つ管理者に関するLaravelのドキュメントを見てみるとユニークな電子メールアドレスを使用する管理者の変更

。私はまだ一意性をチェックしたいが、管理者の電子メールではなく修正されているユーザーの電子メールをスキップする。

どうすればいいですか?

答えて

1

あなたはちょうどあなたが変更しようとしているユーザーのidを渡す必要があります。

は、あなたが次に

public function update(UserRequest $request, $id) { 
    ... 
} 

を持っているのは、あなたのコントローラで言ってみましょうあなたのUserRequestあなたはこれがまさに私が必要なものである

public function rules() { 
    $id = $this->route('id') ?: 0; 

    return [ 
     'email' => "required|unique:users,email,{$id}", 
    ]; 
} 
+0

使用してルートパラメータ$idを取得することができます。暗黙的なバインディングを使用する場合でも、それはオブジェクトです。ありがとうございました。 – Fireynis

関連する問題