Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/asp.net-core/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Laravel 如何从两个模型中获取数据?_Laravel_Relationship - Fatal编程技术网

Laravel 如何从两个模型中获取数据?

Laravel 如何从两个模型中获取数据?,laravel,relationship,Laravel,Relationship,在本例中,我希望通过菜单id从关系中获取所有数据。我该怎么做 我曾尝试在线搜索,但找不到类似的案例。。。请帮忙 以下是我的模型: 菜单 类别 项目 通过执行以下操作,我只能获得菜单的类别: $id = $request->menu_id; $menu = Menu::find($id); $categories = $menu->categories; dd(menu); 当前结果: 我想得到的结果是: 谢谢你的帮助。你可以做到这一点 $id = $request->menu

在本例中,我希望通过菜单id从关系中获取所有数据。我该怎么做

我曾尝试在线搜索,但找不到类似的案例。。。请帮忙

以下是我的模型:

菜单 类别 项目 通过执行以下操作,我只能获得菜单的类别:

$id = $request->menu_id;
$menu = Menu::find($id);
$categories = $menu->categories;
dd(menu);
当前结果: 我想得到的结果是: 谢谢你的帮助。

你可以做到这一点

$id = $request->menu_id;
$menu = Menu::find($id);
$menu->categories = $menu->categories;
dd(menu);
$id=$request->menu\u id;
$menu=menu::with('categories')->find($id);
dd(菜单);

您可以利用即时加载来加载嵌套关系:

$menu = Menu::with('categories.items')->find($id);
$id = $request->menu_id;
$menu = Menu::find($id);
$categories = $menu->categories;
dd(menu);
"data": {
        "id": 1,
        "name": "Menu name",
            {
                "id": 1,
                "title": "Category 1 name",
                "menu_id": 1,
            },
            {
                "id": 2,
                "title": "Category 1 name",
                "menu_id": 1,
                
            },
            {
                "id": 3,
                "title": "Category 1 name",         
                "menu_id": 1,
            }
        ]
    },
"data": {
        "id": 1,
        "name": "Menu Name",
        "categories": [
            {
                "id": 1,
                "title": "Category 1 name",
                "menu_id": 1,
                "items":[
                    {
                        "id": 1,
                        "name": "Item 1 Name"
                    },
                    {
                        "id": 2,
                        "name": "Item 2 Name"
                    },
                ]
            },
            {
                "id": 2,
                "title": "Category 2 name",
                "menu_id": 1,
                "items":[
                    {
                        "id": 1,
                        "name": "Item 3 Name"
                    },
                    {
                        "id": 2,
                        "name": "Item 4 Name"
                    },
                ]
            },
            {
                "id": 3,
                "title": "Category 3 name",
                "menu_id": 1,
                "items":[
                    {
                        "id": 1,
                        "name": "Item 5 Name"
                    },
                    {
                        "id": 2,
                        "name": "Item 6 Name"
                    },
                ]

            }
        ]
    },
$id = $request->menu_id;
$menu = Menu::find($id);
$menu->categories = $menu->categories;
dd(menu);
$menu = Menu::with('categories.items')->find($id);