我使用的是Laravel 5.1。一般来说,为了创造就业机会,我做php artisan make:job SomeJobName
。这将在app/Jobs
目录中创建一个SomeJobName
作业。但是如果我的应用程序非常庞大呢?我最终会有很多的文件在该文件夹中。我想整理一下。我想创建这样的子目录:
app/Jobs/Users/
Store.php
Update.php
Delete.php
app/Jobs/Posts
Store.php
Update.php
Delete.php
推荐的方法是什么?
artisan make:*
命令将接受一个相对命名空间,因此您可以这样做:
php artisan make:job Users/Store
你甚至不需要创建子目录,因为如果它们不存在,artisan会创建它们。
没问题。只需手动创建它们并遵守PSR命名空间规则。
例如,文件app/Jobs/Posts/Store.php
将保存一个类:
namespace App'Jobs'Posts;
use App'Jobs'Job;
class Store extends Job {}
您可以从自动生成的版本复制类的其余部分,或者遵循文档。
如果您在之后调整名称空间,应该是可能的。
创建子目录(例如:用户),复制您的作业(例如。Store.php)并将命名空间修改为namespace App'Jobs'Users;
在消费脚本中,您必须使用use App'Jobs'Users'Store;
导入它或者使用完整的限定符'App'Jobs'Users'Store