php - 使用 Eloquent 从具有外键的单个表中获取数据到另外两个表 - laravel
问题描述
请我有三个模型:讲师,级别,课程。
讲师桌
| ID | Name_of_lecturer
+----+----------------
| 1 .| Prof John Doe
+----+----------------
| 2 .| Prof Jane Doe
等级表
| ID | Name
+----+----------------
| 1 .| Level 1
+----+----------------
| 2 .| Level 2
课程表
| ID | level_id | lecturer_id | course_info
+----+----------+-------------+----------------------------------
| 1 | 2 | 3 a topic in level 2 by lecturer 3
+----+----------+-------------+----------------------------------
| 2 | 5 | 6 | a topic in level 5 by lecturer 6
我真的很困惑如何使用 Eloquent 从 Levels 模型中获取每门课程的讲师详细信息。任何帮助将不胜感激。提前致谢。
解决方案
由于一位讲师可以拥有许多课程,因此您正在寻找一对多的关系。但是由于您要从课程(很多)到讲师(一个),所以您正在寻找这个:
在你的Course
类中添加以下函数:
public function lecturer(){
return $this->belongsTo(Lecturer::class);
}
这将允许您使用$course->lecturer()
或$course->lecturer->Name_of_lecturer
根据需要。
这是 Laravel 文档的相关链接:Eloquent :Relationships - One to Many (Inverse)
推荐阅读
- mysql - 在 MySQL 中使用 UNION ALL 的子查询
- mysql - PHPMYADMIN 登录表单隐藏
- azure-data-catalog - Azure 数据目录备份
- python - 有没有办法在 django 中为变量设置返回值
- azure-cosmosdb - 在部署为 Gremlin 实例的 CosmosDB 中,在哪里设置 partitionKey?
- javascript - 嵌套查询 GraphQl
- database - A+B 在功能上是否依赖于 C
- python-3.x - 注册后使用 django-allauth 重定向到自定义验证页面
- python - Python 冒泡排序循环问题
- unity3d - SetActive 无法识别?