laravel5.1で更新時Validateの注意点(unique制限から自分自身は除外する方法)
| 
					 1 2 3 4 5 6 7 8 9 10 11 12  | 
						    public function update(Request $request, $id)     {         // Validateルール(チェックする項目と内容)を指定         $rules = [                     'username' => ["unique:users"], // このままだと更新が全く出来ない!            'password' => ['between:4,32',],           ];                   // 問題があったら、元ページに戻る         $this->validate($request, $rules);           | 
					
laravelの入力フォームチェックは、’input_name’ => [‘unique:users’]と指定するだけで、重複した値でないか簡単にチェックしてくれる便利機能。
ですが、更新時にも自分自身のレコードと比較して「もうあるよ~」と弾かれてしまうのが玉にキズ。
これを回避するためには、第三引数が除外対象なのでidを指定するだけです。(第二引数はカラム名)
この動作をデフォにして欲しいけど、今度はCreateの時に困りそう…。
| 
					 1 2 3 4 5 6 7 8 9 10 11 12 13  | 
						   public function update(Request $request, $id)     {         // Validateルール(チェックする項目と内容)を指定         $rules = [                // ダブルクォーテーションで囲って、$idを展開させる(シングルクォーテーションではダメ!)             'username' => ["unique:users,username,$id"],              'password' => ['between:4,32',],           ];                   // 問題があったら、元ページに戻る         $this->validate($request, $rules);           |