resource
我没有发现与plain
控制器之间的定义/差异。
它们之间有什么区别?
当您简单地使用**php artisan:make controller ControllerName**
它创建命令时,将创建一个没有函数的文件。您可以自行添加功能。
但是,如果您使用资源创建控制器,那么它只会为您提供 CRUD 操作所需的所有功能。
使用普通控制器,您必须为每个功能创建路由。但是使用资源控制器,您只需添加Route::resource('/routename','ControllerName');
它就会为您的索引、创建、存储、显示、编辑、更新和删除功能添加所有路由。我希望这个答案对你有帮助..
控制器类型的简单定义是:
执行所有CRUD操作时使用资源控制器。
普通控制器用于手动执行的任何操作。
- 清楚的
php artisan make:controller Mycontroller --plain
这最终将创建一个普通的构造函数,因为您传递了参数 --plain。
您创建的控制器可以使用以下语法从 routes.php 文件中调用 -
例子:-Route::get('base URI','Mycontroller@method');
一个基本的控制器代码看起来像这样app/Http/Controller/MyController.php:
<?php
namespace App\Http\Controllers;
use Illuminate\Http\Request;
use App\Http\Requests;
use App\Http\Controllers\Controller;
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
更多细节:-资源控制器