ActiveStorage::PurgeJob 可以排入 `default` 以外的队列吗?

Can ActiveStorage::PurgeJob be enqueued to other than `default`?

我们的 Rails 代码中没有任何名为 default 的队列。但 Sidekiq 似乎将 ActiveStorage::PurgeJob 的队列设置为 default。这就是为什么 purge_later 从来没有工作过。

[ActiveJob] Enqueued ActiveStorage::PurgeJob (Job ID: .. ) to Sidekiq(default) with arguments

有没有办法使用不同于 "default" 的队列名称?我还找不到关于它的文档。

设置活动存储使用的活动作业队列的名称

您可以像这样在配置级别更改 Active Storage 用于其异步作业的队列

config.active_storage.queue = :low_priority

要使其成为应用程序范围的更改,请将其放入您的 application.rb。对于特定环境的更改,将其放入config/environments

下的相关环境文件中

在此处查看文档:
https://guides.rubyonrails.org/configuring.html#configuring-active-storage

这对我不起作用,但以下方法有效

config.active_storage.queues = Hash.new(:default)

这是因为purge_job.rb像这样查找队列名称

queue_as { ActiveStorage.queues[:purge] }