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. 您实际得到的结果?

《L05 电商实战》
从零开发一个电商项目,功能包括电商后台、商品 & SKU 管理、购物车、订单管理、支付宝支付、微信支付、订单退款流程、优惠券等
《L04 微信小程序从零到发布》
从小程序个人账户申请开始,带你一步步进行开发一个微信小程序,直到提交微信控制台上线发布。
最佳答案

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

7个月前 评论
cccdz (作者) 7个月前
Xiao_CC (楼主) 7个月前
Xiao_CC (楼主) 7个月前
cccdz (作者) 7个月前
Xiao_CC (楼主) 7个月前
讨论数量: 11

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

7个月前 评论
cccdz (作者) 7个月前
Xiao_CC (楼主) 7个月前
Xiao_CC (楼主) 7个月前
cccdz (作者) 7个月前
Xiao_CC (楼主) 7个月前

队列《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;
    }
7个月前 评论
Xiao_CC (楼主) 7个月前
Imuyu (作者) 7个月前

Laravel

7个月前 评论
Xiao_CC (楼主) 7个月前

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