【问题标题】:How can I use 2 models in a single view?如何在一个视图中使用 2 个模型?
【发布时间】:2017-12-01 02:48:13
【问题描述】:

我目前正在制作一个主页,我在该主页上展示了“最新运输”和“最新发现”,当然它们都是不同的模型。

目前我只展示了 5 个最新的运输,因为我使用了 HaulController@getWelcome 控制器,所以我可以访问 $haul->title 等。

我怎样才能访问$finds->title

感谢您的帮助!

【问题讨论】:

  • 您需要调整 getWelcome 以将两个变量都传递给视图。
  • @ceejayoz 是的!成功了,非常感谢!

标签: laravel model-view-controller models


【解决方案1】:

您可以通过在控制器函数中使用模型来将模型共享到视图 -

View::share('subadmin', App\Models\SubAdmin::class);

【讨论】:

    【解决方案2】:

    您可以在视图中调用模型,例如 {{ \App\Model::function() }} 所以你可以有{{ App\Model::orderBy('created_at', 'desc')->limit(5)->get() }}

    【讨论】:

      【解决方案3】:

      你有几个选择。

      选项 1:组合模型和一个视图。 为此,请创建一个新的 ViewModel 并将 LatestHauls 和 LatestFinds 作为该模型的属性。您可以在控制器中设置这些属性。 在您的视图中,只需将视图模型向下导航到相应的属性即可。

      选项 2:扩展上述解决方案以使用部分视图。为每个模型创建一个局部视图。在父视图上调用每个局部视图。这可能被认为是更好的解决方案,但选项 1 将帮助您入门。

      【讨论】:

        猜你喜欢
        • 2020-08-06
        • 2017-06-04
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多