以下のように、[]内にunique制約を付けたいカラム名を並べればOK。
マイグレーションファイル
public function up()
{
Schema::create('favorites', function (Blueprint $table) {
/*
複数カラムにunique制約を設定する方法
*/
$table->unique(['user_id', 'post_id'], // []内にunique制約を付けたいカラム名を並べる
'unique_user_id_post_id'); // 第2引数はindex名(省略可能)
/*
【参考】1つのカラムにunique制約を設定するときは以下のような方法で可能
*/
// $table->integer('column_name')->unique(); //カラム名を設定するときにunique()を記述する
// $table->unique('column_name'); //index名を省略した場合、index名は自動で決まる
// $table->unique('column_name' , 'index_name'); // カラムが1つのときは[]はなくても良い
// $table->unique(['column_name'], 'index_name'); // カラムが1つのときに[]を使っても良い
});
}
詳細はLaravelの日本語ドキュメントを参照。
インデックス – Laravel 5.8 データベース:マイグレーション
https://readouble.com/laravel/5.8/ja/migrations.html#indexes