Laravel 7.0版本ShouldQueue如何动态指定queue

1. 运行环境

1). 当前使用的 Laravel 版本?

7.0

2). 当前使用的 php/php-fpm 版本?

PHP 版本:7.2.5

php-fpm 版本:

3). 当前系统

CentOS 7

4). 业务环境

开发环境。

5). 相关软件版本

nginx,redis,supervisor

2. 问题描述?

Laravel
使用构造函数动态指定queue无法成功,实际上最终还是使用了default队列。
请问如何才能动态指定queue。

3. 您期望得到的结果?

实现动态指定queue

4. 您实际得到的结果?

《L04 微信小程序从零到发布》
从小程序个人账户申请开始,带你一步步进行开发一个微信小程序,直到提交微信控制台上线发布。
《G01 Go 实战入门》
从零开始带你一步步开发一个 Go 博客项目,让你在最短的时间内学会使用 Go 进行编码。项目结构很大程度上参考了 Laravel。
最佳答案

listener 拿屬性不是實例化監聽類去拿的 是反射去拿的 所以在構造函數裡面賦值是不生效的 只能直接給屬性賦值
或者通過viaQueue方法去設置

1年前 评论
cccdz (作者) 1年前
Xiao_CC (楼主) 1年前
Xiao_CC (楼主) 1年前
cccdz (作者) 1年前
Xiao_CC (楼主) 1年前
讨论数量: 11

listener 拿屬性不是實例化監聽類去拿的 是反射去拿的 所以在構造函數裡面賦值是不生效的 只能直接給屬性賦值
或者通過viaQueue方法去設置

1年前 评论
cccdz (作者) 1年前
Xiao_CC (楼主) 1年前
Xiao_CC (楼主) 1年前
cccdz (作者) 1年前
Xiao_CC (楼主) 1年前

队列《Laravel 9 中文文档》

<?php

namespace App\Jobs;

 use Illuminate\Bus\Queueable;
 use Illuminate\Contracts\Queue\ShouldQueue;
 use Illuminate\Foundation\Bus\Dispatchable;
 use Illuminate\Queue\InteractsWithQueue;
 use Illuminate\Queue\SerializesModels;

class ProcessPodcast implements ShouldQueue
{
    use Dispatchable, InteractsWithQueue, Queueable, SerializesModels;

    /**
     * 创建一个新的任务实例。
     *
     * @return void
     */
    public function __construct()
    {
        $this->onQueue('processing');
    }
}

函数原型

    /**
     * Set the desired queue for the job.
     *
     * @param  string|null  $queue
     * @return $this
     */
    public function onQueue($queue)
    {
        $this->queue = $queue;

        return $this;
    }
1年前 评论
Xiao_CC (楼主) 1年前
Imuyu (作者) 1年前

Laravel

1年前 评论
Xiao_CC (楼主) 1年前

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!