php - 具有多种模型的 Eloquent ORM

标签 php mysql laravel orm eloquent

我正在尝试创建一个新的 Web 应用程序,目前我已经创建了一个静态数组,其中包含一些如下所示的信息:

array(5) { 
    ["id"]=> int(1) 
    ["firstname"]=> string(6) "martin" 
    ["lastname"]=> string(1) "r" 

    ["school"]=> array(3) { 
        ["id"]=> string(1) "3" 
        ["name"]=> string(22) "tallinna polütehnikum" 
        ["role"]=> string(7) "student" 
    } 

    ["lessons"]=> array(2) { 
        [0]=> array(3) { 
            ["id"]=> int(1) 
            ["name"]=> string(10) "eesti keel" 
            ["grades"]=> array(2) { 
                [0]=> array(2) { 
                    ["id"]=> int(1) 
                    ["grade"]=> int(4) 
                } 
                [1]=> array(2) { 
                    ["id"]=> int(3) 
                    ["grade"]=> int(5) 
                } 
            } 
        }

        [1]=> array(3) {
            ["id"]=> int(2) 
            ["name"]=> string(11) "matemaatika" 
            ["grades"]=> array(1) {
                [0]=> array(2) { 
                    ["id"]=> int(2) 
                    ["grade"]=> int(3)
                } 
            } 
        } 
    } 
}

我也有这样的模型:

  • 用户
  • 学校
  • 成绩
  • 类(class)

类(class)表有 school_id 外键。

学校表有admin_id外键。

Grades 表具有 lesson_idteacher_iduser_id 外键。

我在生成动态数组时遇到了麻烦,就像我之前展示的那样。 我尝试使用

->with('grades')->with('lessons')

但它没有做我想做的事情。

也许有人可以给我一些指导?

最佳答案

你可以这样尝试:

App\User::with('school', 'grades', 'lessons')->find(1)->toArray();

您应该得到一个与您想要的类似的数组。

关于php - 具有多种模型的 Eloquent ORM,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43320323/

相关文章:

php - 如何从 sql 表向 php 表单处理程序添加变量?

mysql - 什么是 SQL Server UPDATE() 触发器函数的 MySQL 等价物?

php - laravel 查询删除日期 < now() with INTERVAL N days

php - Laravel 中的 AJAX 函数未将表单数据发布到 Controller

php mysql 在数据库中插入阿拉伯语单词

php - 需要帮助在 MYSQL 数据库中显示某些数据

php - 在 PHP 中递归地收集图像文件路径

php - MySQL 查询未执行 : "warning: mysql_fetch_assoc() expects parameter 1 to be resource"

mysql - CodeBlocks c++ 使用 SQLAPI++ 连接到 MySQL 时出错

laravel - 如何在 Laravel-Vue.js 应用程序中使用 Storybook