Laravel 5.2 アプリの required:unique バリデーターを、特定の user_id のテーブル結果のみに対して「slug」列の一意性をチェックするように制限しようとしています。つまり、スラッグは一意である必要がありますが、ユーザーごとにのみ必要です。次のコードを使用して、 store() 関数で機能しています。
'slug' => 'required|unique:contents,slug,NULL,id,user_id,' . Auth::id()
それはうまくいきます。ただし、update() 関数を同じように動作させることはできません。これは、現在更新中のエントリの結果に対して一意のチェックをバリデーターに停止させることができないためです。私が現在使用しているコードは次のとおりです。
'slug' => 'required|unique:contents,slug,' . $content->slug . ',id,user_id,' . Auth::id()
そのコードは私には正しく見えませんが、いくつかのバリエーションを試しましたが、どれも思い通りに動作しません。私の考えでは、これはうまくいくと思います:
'slug' => 'required|unique:contents,id,' . $content->id . ',user_id,' . Auth::id()
しかし、そうではありません。私の問題がここにあることを誰か知っていますか?どんなガイダンスでも大歓迎です。