在我的应用程序中,我使用Resque来调整图像大小.如果图像在调整大小的队列中,我想
显示一个“调整大小的图像”图标.
这意味着我需要能够找到队列中与特定型号ID相关的所有当前作业.现在我这样做:
Resque.peek(:resize,100).find_all { |job| /#{model.id}/.match(job["args"][0]) }
这是愚蠢的但是有没有办法查询Resque队列来查找第一个参数等于[id]的所有作业?
提前致谢.
您不应该
查询重新排队队列,而应该存储图像元数据以及模型.
假设您正在存储产品图像.您可能使用Redis哈希来存储产品详细信息.只需添加这样的另一个标志 –
hset产品:123 is_resizing true
您可以执行简单的查找来显示调整大小的图像图标.在重新排列作业结束时,删除is_resizing键,并添加resized_image_url键.