Find specific job in resque queue
redis, resque, ruby, ruby-on-rails
Solution
Instead of querying resque queue, you should store image meta-data along with your model.
Lets assume you are storing product images. You are likely using a Redis hash to store product details. Just add another flag like this -
`hset product:123 is_resizing true`
You can them perform a simple lookup to show the resizing image icon. At the end of your resque job, delete the `is_resizing` key, and add the `resized_image_url` key.
Problem
In my application, I'm using Resque to resize images. If an image is in the resizing queue, I want to show a "resizing image" icon. This means that I need to be able to find all current jobs relating to a specific model ID in the queue. Right now I do it like this: ``` Resque.peek(:resize, 0, 100).find_all { |job| /#{model.id}/.match(job["args"][0]) } ``` This is stupid. But is there any way to query the Resque queue to find all jobs where the first argument is equal to [id]? Thanks in advance.