FK

2016-05-04 10 views
0

こんにちは、私はlaravel中の多型の関係を使用しています:official docFK

基本的には、アイデアは(トーナメント、チーム、Asociation、クラブいくつかのオブジェクトにユーザーを招待できるようにするです、など...)だから、

、私の "招待状" テーブルは以下のようである:

OBJECT_TYPEクラス( 'アプリケーション\大会' の名称である
(id, object_id, object_type, user_id, other_fields) 

、 'アプリケーション\チーム'、など)、およびobject_idはFKです。

しかし、この方法では、object_idをMySQL(MariaDB)の外部キーとして使用する方法がわかりません。

答えて

0

多態性の背景にある考え方は、object_idフィールドが他の単一のテーブルを指していないということです。

いつもそうとは限りませんので、object_idの参照idをテーブル 'X'に指定することはできません。

+0

私は知っていますが、その方法では、私は自分のDBの整合性が失われています。だから、私はファンですが、大きなものではありません...私は、この種の一般的なもののためのmysqlの回避策があると思った –

+0

あなたはすべてのものをチェックしている間にトランザクションを使用して "手作業で"整合性を確認することができます.. – PeterPan666

+0

私はあなたが何を意味しているのか分かりません。 –