我没有发现resource
和plain
控制器之间的定义/差异。
它们之间有什么区别?
当您简单地使用 **php artisan:make controller ControllerName**
创建一个命令时,它将创建一个没有函数的文件。您可以自己添加函数。
但是,如果您使用资源创建控制器,那么它将简单地为您提供 CRUD 操作所需的所有功能。
使用普通控制器,您必须为每个功能创建路由。但是使用资源控制器,您只需添加Route::resource('/routename','ControllerName');
然后它将为您的索引添加所有路由,创建,存储,显示,编辑,更新和删除功能。希望这个答案对您有所帮助。
控制器类型的简单定义是:
执行所有 CRUD 操作时使用资源控制器。
平原控制器用于手动执行的任何操作。
--plain
php artisan make:controller Mycontroller --plain
这最终将成为一个普通的构造函数,因为您正在传递参数 --plain。
可以使用以下语法从路由.php文件中调用您创建的控制器-
示例:- Route::get('base URI','Mycontroller@method');
基本的控制器代码将类似于以下 app/Http/Controller/MyController.php:
<?php
namespace AppHttpControllers;
use IlluminateHttpRequest;
use AppHttpRequests;
use AppHttpControllersController;
class MyController extends Controller
{
//
}
资源控制器
Laravel的资源路由为具有单行代码的控制器分配经典的"CRUD"路由。这可以使用make:controller命令(Artisan命令)快速创建
,如下所示"php artisan make:controller MyController --resource
资源控制器处理的操作:
Verb URI Action Route Name
GET /photos index photos.index
GET /photos/create create photos.create
POST /photos store photos.store
GET /photos/{photo} show photos.show
GET /photos/{photo}/edit edit photos.edit
PUT/PATCH /photos/{photo} update photos.update
DELETE /photos/{photo} destroy photos.destroy
更多详细信息:- 资源控制器