Laravel在单个视图中访问多个模型/表

时间:2016-12-02 14:00:40

标签: php laravel models blade

所以我正在Laravel框架中建立一个项目管理网站。 买我的问题是:我有一个Models表,一个submodels表和一个subsubmodelstable。子模型属于模型,子模型属于子模型。但我希望有一些仪表板视图,我可以用它们的子模块和子模块来监督所有模块。 但是我在仪表板视图中访问所有模型(表格)时遇到问题。 我有控制器用于模块类型,但尚未用于仪表板视图。

提前感谢您的帮助!

2 个答案:

答案 0 :(得分:0)

我想最好的方法是两种关系的eager load模型:

Model::with('submodel', 'submodel.subsubmodel')->get();

点符号在这里用于nested eager loading

答案 1 :(得分:0)

如果您可以从模型中获取子模型(如$ model->子模型),那么您只需为仪表板创建一个控制器,并返回带有模型的仪表板视图

$models = Model::all();
$return view('...')->with('models', $models);
在视图中

,遍历所有模型。在迭代中,您还可以迭代其子模型及其子子模型

@foreach($models as $model)
    @foreach($model->submodels as $submodel)
        @foreach($submodel->subsubmodels as $subsubmodel)

        @endforeach
    @endforeach
@endforeach