将Laravel 5.0升级到Laravel 5.1的命令转换为任务

10
Laravel 5.1将把Commands改名为Jobs,并将Events改名为Listeners。我在Laravel 5.0中使用CommandsCommand Handlers,如下所示:app\Commands\MyCommandhttp://laravel.com/docs/5.1/releases#laravel-5.1
<?php namespace app\Commands;

use app\Commands\Command;

class MyCommand extends Command
{

    public $data;

    public function __construct($data)
    {
        $this->data = $data;
    }
}

app\Handlers\Commands\MyCommand

<?php namespace app\Handlers\Commands\Genapps;

use app\Commands\MyCommand;

class MyCommandHandler
{
    public function handle(MyCommand $command)
    {

    }
}

我不知道如何在Laravel 5.1中实现处理程序。

我最近使用了 Laravel Shift 来自动升级 Laravel 5.0 到 5.1。这个工具不仅如此,还有更多功能。 - rohit_wason
1个回答

4

来自5.1 发布说明

然而,这不是一个破坏性的更改,您不需要更新到新的文件夹结构才能使用Laravel 5.1。

如果您想升级,只需重命名文件夹并更改命名空间(Laravel在版本5中使用PSR-4自动加载器,因此文件夹结构对应于您的文件的命名空间)。

但是,如果您的项目非常大,我不建议您这样做,因为正如文档所述,这不是升级的必要步骤,您的代码在5.1中将正常工作。 这更像是一种外观上的变化。


是的,但这让我感到非常不舒服,几乎可以保证将来这将成为一个破坏性的变化。我不指望他们会永远保持向后兼容,所以最好现在就解决这个问题。 - user391986
文档说明该更改是向后兼容的。如果您想要,那么可以进行迁移。创建 app/Jobsapp/Listeners 目录,将您的类移动到这里,更改命名空间并更新所有代码以使用正确的命名空间。 - Sh1d0w

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接