如何在Laravel 5.1中为作业创建子目录?

时间:2015-07-15 18:38:50

标签: php laravel laravel-5 laravel-5.1

我正在使用Laravel 5.1。一般来说,为了生成工作php artisan make:job SomeJobName。这基本上会在SomeJobName目录中创建一个app/Jobs作业。但是,如果我的应用程序是巨大的。我最终会在该文件夹中拥有很多的文件。我想整理一下。我想创建子目录,如:

app/Jobs/Users/
   Store.php
   Update.php
   Delete.php
app/Jobs/Posts
   Store.php
   Update.php
   Delete.php

建议的方法是什么?

3 个答案:

答案 0 :(得分:6)

artisan make:*命令将接受相对命名空间,因此您可以执行以下操作:

php artisan make:job Users/Store

您甚至不需要创建子目录,因为如果技术人员不存在,他们将创建子目录。

答案 1 :(得分:1)

这没问题。只需手动创建它们并遵守PSR命名空间规则。

例如,文件app/Jobs/Posts/Store.php将包含如下类:

namespace App\Jobs\Posts;

use App\Jobs\Job;

class Store extends Job {}

您可以从自动生成的版本中复制课程的其余部分,也可以按照documentation

答案 2 :(得分:1)

之后调整名称空间应该是可能的。

创建子目录(例如用户),复制你的工作(例如Store.php) 并将名称空间更改为namespace App\Jobs\Users; 在使用脚本中,您必须使用use App\Jobs\Users\Store;导入它 或使用完整限定符\App\Jobs\Users\Store