0

これらは私のテーブルです:

ユーザー:

id      username        password
1       user1           ********
2       user2           ********
3       user3           ********
4       user4           ********
5       user5           ********
6       user6           ********

ユーザー接続:

pivot_id    parent_user_id  child_user_id
1           1               2
2           1               3
3           3               4
4           3               5
class User extends Model
{
    public function connections()
    {
        return $this->hasMany('App\UserConnections')->with(['parent','child']);
    }
}

class UserConnection extends Model
{
    public function parent()
    {
        $this->belongsTo('App\User','parent_user_id');
    }

    public function child()
    {
        $this->belongsTo('App\User','child_user_id');
    }   
}

$user = App\User::find(3);

$user->connectionsここで、ユーザー ID 3を呼び出すと、

UserConnectionsテーブルから2、3、4行が表示されるはずです

説明:
2 番目の行では、user3 には user1 という親がいます
。3 番目と 4 番目の行では、user3 には 2 つの子があります。

4

1 に答える 1

0

これが私の問題を解決したものです:

ユーザー:

id      username        password
1       user1           ********
2       user2           ********
3       user3           ********
4       user4           ********
5       user5           ********
6       user6           ********

ユーザー接続:

pivot_id    parent_user_id  child_user_id   relation
1           1               2               child
2           2               1               parent
3           1               3               child
4           3               1               parent
5           3               4               child
6           4               3               parent
7           3               5               child
8           5               3               parent
class User extends Model
{
    public function connections()
    {
        return $this->belongsToMany('App\Newsroom','UserConnections','parent_user_id','child_user_id')->with(['user']);
    }
}

class UserConnection extends Model
{
    public function user()
    {
        $this->belongsTo('App\User','child_user_id');
    }
}

@Autista_z に感謝

于 2016-05-18T11:18:27.773 に答える