2017年1月6日金曜日

Laravel5.3で更新の「unique」バリデーション

Laravel5.3で更新の「unique」バリデーションです。データベースのに問い合わせし、該当のデータIDを除いてユニークか否かをチェックしてくれます。

/app/Http/Requests/StoreBlogPost.php
namespace App\Http\Requests;

use Illuminate\Foundation\Http\FormRequest;
use Illuminate\Validation\Rule;

class StoreBlogPost extends FormRequest
{
  /**
   * Get the validation rules that apply to the request.
   *
   * @return array
   */
  public function rules()
  {
    // $this->segment(2) にはIDが入る。
    return [
      'title' => ['required',Rule::unique('blogs')->ignore($this->segment(2))],
      'contents' => 'required',
    ];
  }
}

参考サイト
Validation(Laravel)
Laravel 5 Validation Request, how to handle validation on update?(Laracasts)
segments(Laravel API)

0 件のコメント:

コメントを投稿