【问题标题】:Laravel relationships, hasmany and then blongstomanyLaravel 关系,hasmany 和 blongstomany
【发布时间】:2021-12-14 01:17:36
【问题描述】:

大家好,我有一个关于多重关系的问题。

我有 3 张桌子:

students - id, username, pass
teachers - id, username, pass
periods - id, teacher_id, name

和 student_period 多对多。

这就是数据库的样子:https://i.imgur.com/MXxLmQj.png

我想做的是我想让老师的所有学生都通过时期,还没有见过这样的关系谁这样做,知道怎么做吗?

【问题讨论】:

    标签: php laravel model relationship


    【解决方案1】:

    设置教师和时期hasManybelongsTo的关系

    设置学生和时期的关系为belongToManybelongsToMany

    那么你可以像这样获取特定老师的学生

    $teacherId = 1;
    $students = Student::whereHas('periods.teacher', function($teacherQueryBuilder) use ($teacherId) {
        $teacherQueryBuilder->where('id', $teacherId);
    })->get();
    

    【讨论】:

      猜你喜欢
      • 2021-03-22
      • 1970-01-01
      • 2019-03-04
      • 1970-01-01
      • 2020-03-25
      • 2021-09-24
      • 2016-03-17
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多