Eloquent属于同一模型的两个模型之间的关系

Eloquent relationship between two models that belong to the same model

我在 ParentChild 之间有一个 多对多 关系,但我还不知道如何使用 Eloquent 关系.

class Child extends Model
{
    public function family()
    {
        return $this->belongsTo(Family::class);
    }
}
class Parent extends Model
{
    public function family()
    {
        return $this->belongsTo(Family::class);
    }
}

(我知道我不能在 PHP 中命名 class Parent,我只是不想透露我所有的数据库)

class Family extends Model
{
    public function parents()
    {
        return $this->hasMany(Parent::class);
    }

    public function children()
    {
        return $this->hasMany(Child::class);
    }  }
}

我需要通过 Family 设置 ChildParent 之间的关系。

到目前为止我在做:

App\Models\Child::find(1)->family->with(['parents'])->get()
public function parents()
{
    return $this->hasManyThrough(Parent::class, Family::class, 'id', 'family_id', 'family_id', 'id');
}