|
|
1
3
永远不要做任何事情,只需在视图层中循环浏览数据。基本上,laravel中的正常MVC模式可以是这样的: 这一切都始于路由层(顺便说一句,这在laravel中非常棒) 使用闭包
使用控制器(和控制器方法)
上面的控制器可能看起来像这样:
上面的例子只是展示了MVC中的VC,但通常情况下,您会以相同的方式传递模型中的数据。 下面是一个快速的例子: 控制器中的模型使用
所以这个想法是laravel可以让你以多种方式做事。如果你有一个小应用程序,并且确保你可以在没有控制器的情况下进行管理,你可以跳过控制器,将所有内容保留在路由层中。 然而,对于大多数应用程序来说,需要控制器来控制应用程序中的数据流。 如果你是MVC的新手,你应该看看关于这个主题的教程。 编辑: 啊哈!所以你想在所有视图中共享一些数据!好吧,很简单。因为您的所有控制器都扩展了BaseController,所以您可以简单地将数据传入其中。就像这样:
现在,数据变量在所有视图中都可用。 PS。过滤器是用来过滤东西的,比如检查某些东西是否“正常”。这可能包括检查认证用户或表单提交等。 |
|
|
2
2
对于像您这样的案例,还有另一种特别方便的解决方案。如果你有15条最终都包含inc.header视图的路由。。。好吧,你可以看到这是怎么回事。您将在多个地方重复数据逻辑。Patrik建议使用BaseController,这是一个很好的解决方案,但我更喜欢使用composer。
这并没有变得更容易。:) |
|
|
3
1
不,您不与视图层中的数据库(模型)进行交互。MVC代表“模型-视图-控制器”,用于分离应用程序的逻辑、应用程序数据和业务规则。
您可以创建一个主布局(包含页眉),并将此布局用于应用程序的所有页面:
布局/ 主叶片.php :
页面1.blade.php :
了解有关的更多信息 Blade templating engine . 现在你从哪里获取数据? 最快/最简单的开发方法是将路由用作控制器,随着应用程序的发展,您开始重构代码并创建控制器。 应用程序/ 路由.php :
可以使用获取数据 Fluent class 或 Eloquent ORM . 我建议您学习Laravel的基本知识,以便正确地创建应用程序的基础,这样它在未来将非常容易维护。 |
|
|
4
1
这里的答案和问题并不是那么简单。首先,我们刚刚介绍了MVC并试图理解其基本概念,MVC的流程是Controller->型号->看法在这里,我们可以看到数据是从模型直接传递到视图的。如何使用Laravel MVC的当前示例是让模型将数据返回到控制器,使流如下:Conntroller->模型控制器->看法在这里,我们可以看到模型和视图并不相互了解。维基百科上的一个qucik视图显示,这种类型的建模和控制已知具有MVA。A代表适配器,也被称为中介控制器,所以现在我们回到这里的答案。我们应该使用MVA还是MVC?如何在Laravel中实现真正的MVC?答案是使用{{Form:model}}}facade来实现真正的MVC。但是,如果观点发生变化,会发生什么?我们应该从视图调用模型来获取新数据吗?答案是否定的,如果视图必须更改,那么用户应该让控制器做出反应,启动MVC的新循环。因此,我们可以在这里看到,使用Laravel框架将MVC和MVA混合在一起,可以根据网站的需求实现高度定制的流程。 |
|
|
Bard.Mus · 迁移后的数据库字符集环境 1 年前 |
|
Efannnnnn · 将Id数据存储到任何页面 1 年前 |
|
|
yooooo · 用于在块中删除的存储过程-LOOP未执行 1 年前 |
|
John Beasley · 更新一定数量记录的连续日期 1 年前 |
|
|
ColinM · MySQL以前的结果查询返回不正确的值 1 年前 |
|
Sergey_Z · MySQL只需无条件连接2个表和交叉连接 1 年前 |