Я создал работника Sidekiq, который будет дублировать существующую запись с приложением для скрепки скрепки, но, похоже, она не работает.Скрепка с Sidekiq не работает
#controller
product = Product.find(2)
SuperWorker.perform_in(5.minutes, product.id)
#worker
class SuperWorker
include Sidekiq::Worker
def perform(product_id)
product = Product.find(product_id)
product.generate_clone
end
end
#product model
...
has_attached_file :front_image, :styles => { :medium => "415x500>", :thumb => "100x100>" }, :default_url => "/assets/thumbnail-default.jpg"
validates_attachment_content_type :front_image, :content_type => ['image/png']
has_attached_file :back_image, :styles => { :medium => "415x500>", :thumb => "100x100>" }, :default_url => "/assets/thumbnail-default.jpg"
validates_attachment_content_type :back_image, :content_type => ['image/png']
def generate_clone
new_product = self.dup
new_product.front_image = self.front_image
new_product.back_image = self.back_image
new_product.save
end
Когда я делаю тиражирование записи в консоли, кажется, работает, поэтому я очень озадачен, почему он не работает в запланированной задаче. Вот как я это сделал в консоли rails.
p = Product.find(2)
new_p = p.dup
new_p.front_image = p.front_image
new_p.back_image = p.back_image
new_p.save
Это прекрасно работает, но в sidekiq работнике это не так.
Надеюсь, вы можете пролить свет на то, что я сделал с этим, и/или если я что-то пропустил.
спасибо.
Eralph