如何使用Artisan命令(PHP)在Laravel 5.2中创建RESTful资源控制器

时间:2016-01-08 12:49:19

标签: php laravel-5.2 ioc-container

我正在使用Laravel 5,我想知道如何使用Artisan命令(PHP)生成包含所有预定义方法的RESTful资源控制器。

当我运行php artisan make:controller LessonsController时,它会创建一个控制器,没有如下所示的方法:

<?php
namespace App\Http\Controllers;

use Illuminate\Http\Request;
use App\Http\Requests;

class LessonsController extends Controller
{


}

我想要创建的是一个完整的Laravel RESTful资源控制器,其中包含所有预定义方法,如:index(), create(), store(), show(), edit(), update()destroy()

我怎样才能做到这一点?

6 个答案:

答案 0 :(得分:60)

尝试获取命令

的帮助
php artisan help make:controller

如果在帮助选项中看到--resource标志,则可能是5.2,并且可以将该标志添加到命令中以获取资源控制器。

php artisan make:controller --resource SomeResourceController

对于Laravel 5.0和5.1,make:controller命令默认生成资源控制器,--plain选项将生成普通控制器。

Laravel 5.2 - Restful Resource Controllers - 默认普通

Laravel 5.1 - Restful Resource Controllers - 默认资源

Laravel 5.0 - Restful Resource Controllers - 默认资源

答案 1 :(得分:10)

Laravel 5.2

php artisan make:controller NameofController --resource
// It will create the controller with all methods.

如果Laravel < 5.2

php artisan make:controller NameofController
// It will create the controller with all methods.

php artisan make:controller NameofController --plain
// It will create the controller without any method.

答案 2 :(得分:2)

对于具有所需方法的默认控制器。 php artisan make:controller LessonsController

如果你想要没有方法的普通控制器 php artisan make:controller --plain LessonsController

答案 3 :(得分:1)

php artisan make:controller "NameOfController" - 将使用所有方法创建控制器

php artisan make:controller "NameOfController" --plain This will create controller with no methods.

最诚挚的问候,我正在使用laravel 5.0

答案 4 :(得分:1)

php artisan make:controller ControllerName --resource

答案 5 :(得分:0)

因此您正在使用Laravel 5.2,因此让控制器使用RESTful方法发出命令

php artisan make:controller --resource NAME_OF_CONTROLLER

在Laravel 5.1及更低版本中,默认情况下, make:controller 命令用于生成具有所有必需方法的Controller,例如索引,创建,存储,显示,编辑,更新,摧毁&#39 ;.对于5.1及以下版本,要使用没有任何方法的空白控制器文件,我们过去常常使用&#39; - plain&#39;参数为

php artisan make:controller --plain NAME_OF_CONTROLLER

但是使用Laravel 5.2,默认情况下,artisan命令将创建裸控制器文件而不使用任何RESTful方法。

由于Laravel 5.2有很多变化,最好使用&#39; artisan help&#39;命令如下

php artisan help make:controller

有了这个,我们将实现--resource

的引入

请参阅Laravel文档Laravel HTTP Controllers - Artisan Command

建议:由于这是5.2的变化,所以也可以编辑帖子标题。