我几乎已经使用Laravel 2.4.3框架开发了一个网站。
现在我们将开始为该网站开发移动应用程序。我在Internet上进行了一项小型研究,我发现Laravel支持RESTFUL控制器,我可以使用它来创建Web服务。因此,在我的服务器和移动应用程序之间进行通信。
是否可以和实用同时制作与RESTFUL和资源控制器相同的控制器?
或更好将它们分开?
由于
在我看来,他们每个人都应该是一个独立的控制者,我只想确保你们是专家。
答案 0 :(得分:3)
正如Laravel自己的文档中直接说明的那样,资源控制器是围绕资源的 RESTful 控制器。因此,通过拥有资源控制器,您已经具有RESTful功能,并添加了资源处理操作。 Laravel Documentation说:
资源控制器可以更轻松地构建RESTful控制器 围绕资源。例如,您可能希望创建一个控制器 管理您的应用程序存储的“照片”。使用 controller:通过Artisan CLI和Route :: resource生成命令 方法,我们可以快速创建这样的控制器。
这些行为也列出了相关HTTP-Verb的规范:
Actions Handled By Resource Controller
Verb Path Action Route Name
GET /resource index resource.index
GET /resource/create create resource.create
POST /resource store resource.store
GET /resource/{resource} show resource.show
GET /resource/{resource}/edit edit resource.edit
PUT/PATCH /resource/{resource} update resource.update
DELETE /resource/{resource} destroy resource.destroy
尽管如此,上述路由适用于doc:
中给出的示例控制器Route::resource('photo', 'PhotoController');
因此,通过访问domain/resource
,如果请求是使用POST动词提供的,那么post操作会处理它,否则如果GET,那么GET操作将介入。
你可以在这里阅读:
http://laravel.com/docs/controllers#resource-controllers
<强> EDITED 强>
关于分居的问题,我应该说,如前所述,是的。
您有控制器负责处理资源管理和操作,有时您需要RESTful控制器以不同的方式处理您的请求。
例如,您有一个处理数据处理和计算的控制器,那么它与资源管理没有任何关系。
答案 1 :(得分:0)
或者最好将它们分开?
是。总是
路由中的自动化是魔鬼,随着时间的推移,我逐渐厌恶它。
http://philsturgeon.co.uk/blog/2013/07/beware-the-route-to-evil