2016-06-28 13 views
0

を持っています友達、例えばfacebook friends)。 1は、おそらくこのような奇妙なテーブルで終わるでしょうユーザーは、今、私は、各<strong>ユーザー</strong>が多く<strong>ユーザー</strong>(多くのユーザーが、私は実際に意味を持っているように互いにユーザーを関連付ける必要があり、私はテーブル</p> <pre><code>Users: id|name|surname </code></pre> <p>を持っている多くのユーザーの関係、CakePHPの道

後CakePHPの規則:これを達成するために私の構造を変更するための最良の方法は何

Users 
id|name|surname 

UserUsers 
id|user_id|user_id 

。 CakePHP 3.XがCakephpの規約を考慮しているかどうかは特に問いませんでした。

+2

結合表の名前はUsersUsersであり、同じデータベース表に2つのuser_idを持つことはできません。私はUsersテーブルに接続されているFriendsという名前の2番目のモデルを追加し、UsersFriendsモデルを結合します。 – rrd

+0

あなたが使っているCakePHPのバージョン、あるいはCakePHPを使っているバージョンでも、答えには関係ありません。それは青い車**のためにAからB **への運転の方向性を求めることのようなビットです**。 – AD7six

+0

[Friendship in CakePHP 2.x]の重複している可能性があります(http://stackoverflow.com/questions/11277974/friendships-in-cakephp-2-x)(最初に重複が見つかりました。 「友情スキーマ」など) – AD7six

答えて

0

私はあなたがケーキ3であなたのUsersTableでこのような関係を定義することができると信じて:

$this->belongsTo('Users', [ 
      'className' => 'Users', 
      'foreignKey' => 'facebook_user_id', 
      'joinType' => 'LEFT' 
     ]); 

あなたはfacebook_user_idを定義し、あなたのIDへの外部キーとしてそれを設定する必要があります。

関連する問題

 関連する問題