【发布时间】:2020-11-24 09:23:07
【问题描述】:
我想知道是否有关于 Laravel 控制器的良好做法。
它们应该基于资源还是基于视图?
为了更清楚,我所说的资源是指应用程序中的单个实体,例如用户、博客、评论、付款等,我所说的视图是用户看到的页面/屏幕。
此外,一个视图可以显示多个混合在一起的资源,例如,假设一个“帐户”视图将显示不同的资源,例如
- 所有有待支付的志愿者(志愿者资源)
- 最近的付款(付款资源)
- 最近支付的任务(任务资源)等
那么,更好的做法是为所有上述资源设置一个控制器,然后分别获取它们(任务、志愿者和付款分别),或者为“帐户”视图设置一个控制器,其中一个请求将返回所有资源需要在页面上显示的数据?
任何建议都会有所帮助!
【问题讨论】:
-
我认为这取决于需要,通常我们使用基于资源的(特别是在 CRUD 中)。我不认为基于视图是正确的做法,因为在所有情况下它只是一个与另一个资源相关的资源。您可能需要将它们混合使用基于资源作为构建应用程序的主要方式并使用基于共享部分的视图,您可以将它们分开
标签: laravel