Laravel 4 - как использовать класс пакета в качестве работника очереди

Я собрал свой первый пакет Laravel 4.

Я использовал ремесленника, чтобы создать структуру.

Мне нужно использовать пакет для обработки очереди (как рабочий).

Я использую встроенную очередь Beanstalk и настроил ее, и я могу добавить в очередь.

Какой правильный синтаксис для добавления правильного пути к классу, который я хотел бы использовать для обработки очереди.

Я могу заставить это работать, если класс сохранен здесь /app/controllers/TestClass.php (потому что это автоматически загружается)
Пример:

Route::get('/addtoqueue', function()
{
    $message = "This is a test message";
    Queue::push('TestClass', array('message' => $message));
    return 'Added to Queue';
});

Но что я должен добавить в качестве класса в очереди, если класс находится в пакете?
Этот файл находится в рабочей среде: workbench \ vendor \ package \ src \ Vendor \ Package

Мой файл компоновщика пакета содержит

"autoload": {
    "psr-0": {
        "Qwickli\\Tika": "src/"
    }
},

Например. Queue::push('vendor\package\TestClass', массив ('message' => $message));

Когда я запускаю php artisan queue:listen, он правильно подбирает элементы в очереди, но не находит класс (в пакете), который я хотел бы использовать, чтобы обработать очередь.

По какой-то причине класс не загружается (или не загружается автоматически), и я не знаю, как это сделать.

Спасибо за все и любую помощь

1 ответ

Похоже, ваши классы пакетов не были автоматически загружены.

Попробуйте получить доступ к папке вашего пакета, workbench / vendor / package и запустить обновление compsoer. Если настройки "автозагрузки" вашего композитора верны, это должно сработать.

Другие вопросы по тегам