多対多のリレーションを設計するときに、ドキュメント通りやっていたと思ったらちょっとした勘違いをした話です。
ここに3つのテーブルがあるじゃろ?
今回のテーブル
- events
- event_tags
- event_tag_event←pivotテーブル
通常のテーブルは
- events
- tags
- tag_event
って感じでデフォルトの規則通りリレーションを貼ればいいのですが、ちょっと癖のある名前にすると少し気をつけるところがあるようです。
ドキュメントを見てみる
ほうほう第2引数をもたせてあげればいいんだなー
tinkerを立ち上げて確認すると・・
怒られます。ヽ(´ー`)ノ
第2引数はPivotテーブル名!
もしかしてPivotテーブル名を指定するのでは・・?
SQLSTATE[42000]: Syntax error or access violation: 1066 Not unique table/alias on relationship
怒られませんでした。ヽ(´ー`)ノ
所感
最近はバッグエンドよりもフロントエンドが気になって夜も寝れませんヽ(´ー`)ノ