2017-06-22 8 views
0

私はlarvel 5.4とphp付きのcouchbaseを使用しています。7.1クライアントごとのDB内でユニークなメールアドレス

私たちのシステムでは、新しいユーザーを作成できます。今まで、電子メールフィールドは、データベースのユーザーテーブルに対して一意でなければなりませんでした。これは、正常に動作して

'email'  => 'required|email|unique:users,email,NULL,user_id,datetime_deleted,NULL', 

、何の問題は、我々は我々のリクエストでこれを使用していません。 ここでは、ユーザーの電子メールがユーザーテーブル全体ではなく、1つのクライアントに固有のものでなければならないという新しい要求がアプリケーションに出されています。ドキュメントの 'client_id'フィールド。

これを私のリクエストクラスに入れることはできますか?

+0

答えを確認[ここ](https://stackoverflow.com/a/44658475/7894379)。それがあなたを助けることを願って –

答えて

1
laravel 5.3

と の上にあなたが追加追加でき、以下のように独自の検証のための句

'email' => Rule::unique('users')->where(function ($query) { 
    $query->where('user_id', Auth::user()->id); 
}) 

使用を照らし\検証\ルールを言及することを忘れないでください。

OR laravel 5.2

についての試し認証のUSER_IDと行のみ、上記のルールで更新

'email' => 'unique:users,email,{id of object to edit},id,user_id,'.Auth::user()->id, 

'email' => 'unique:users,email,NULL,id,user_id,'.Auth::user()->id, 

を挿入しながら:: ID()になりますユニークなチェックに含めることができます。

関連する問題