【问题标题】:Laravel: show data in laravel with two tableLaravel:用两个表在 laravel 中显示数据
【发布时间】:2021-09-08 10:05:18
【问题描述】:

我想在 laravel 中显示数据。 这是教室表:

这是学生表:

这是教室学生表:

我希望得到这样的结果:

class来自教室表,year来自学生表(创建学生的年份),data来自学生表(每个月的数据,样本数据:[2,4,6] 表示 1 月 2 日,2 月 4 日,3 月 6 日)。我不知道怎么做。你能帮助我吗?谢谢

【问题讨论】:

    标签: laravel eloquent laravel-8 laravel-query-builder


    【解决方案1】:

    您需要为两个模型(课堂模型和学生模型)设置多对多关系。它看起来像这样:

    class Classroom extends Model {
    
      public function students(){
         return $this->hasMany(Student:class, 'student_id');
      }
    
    }
    
    class Student extends Model {
    
      public function classrooms(){
         return $this->hasMany(Classroom:class, 'classroom_id');
      }
    
    }
    

    这里还参考了 laravel 文档的确切解决方案:

    https://laravel.com/docs/8.x/eloquent-relationships#many-to-many

    【讨论】:

      【解决方案2】:

      您应该在两个模型中使用 HasMany Relation,并在获取数据时调用此关系函数以获取与其他模型相关的数据并在 Transformer 中为这些数据设置预期的标题。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2020-05-12
        • 2021-07-19
        • 1970-01-01
        • 2020-04-09
        相关资源
        最近更新 更多