DocumentationLaravelのEloquentでのお話。belongsToManyでリレーションを作って、attachで関連を追加するぜーとしてみてところ、同じIDをいれても再現なく関連が追加される。コードを確認すると、存在チェックを行わず単純にInsertしているだけだった。存在チェックを行った上で関連を追加するには、syncメソッドの第2引数をfalseにして呼び出すとよいぽぃ。(他に適切なやり方があれば教えてください。false);なお、syncの第1引数は配列である必要がある。falseの指定を忘れると、指定以外の関連を削除してくれる(こっちが本来の挙動)ので気をつけるべし。