Laravel 在数据透视表上属于ToMany

问题描述 投票:0回答:1

数据透视表是否可以拥有自己的多对多关系;一个例子:

考试表

零件表

考试部分数据透视表

教师表

考试部分教师数据透视表

class Exam extends Model
{
    public function parts() {
        return $this->belongsToMany(Part::class);
    }
}
class Part extends Model
{
    public function exams() {
        return $this->belongsToMany(Exam::class);
    }
}
class ExamPart extends Pivot
{
    public function teachers() {
        return $this->belongsToMany(Teacher::class);
    }
}
class Teacher extends Model
{
    public function examParts() {
        return $this->belongsToMany(ExamPart::class);
    }
}

我知道这可以通过许多 exam_part_pivot 模型而不是数据透视表来实现多个一对多关系。我想知道 Laravel 的 eloquent 或任何其他包是否可以实现多对多对多。

laravel eloquent
1个回答
0
投票

您可以使用附加包来实现与数据透视表的自相关和多对多关系

https://github.com/kingmaker-agm/laravel-many-to-many-self

© www.soinside.com 2019 - 2024. All rights reserved.