URL 존재를 확인하고 존재하지 않는 경우 사진 개체를 만들 수있는이 간단한 방법이 있습니다.delayed_job이 클립 작업을하지 않습니다.
def create_profile_photo(user_id,image_url)
if Photo.find_by_external_url(image_url).blank?
profile_photo = Photo.new
profile_photo.user_id = user_id
profile_photo.picture_from_url(image_url)
profile_photo.save
end
end
# Photo.rb
def picture_from_url(url)
self.external_url = url
self.attachment = URI.parse(clean_url)
end
작동하지 않습니다. 하지만 delayed_job
을 사용하여이 방법을 실행하려고하면 작동하지 않습니다.
ruby-1.9.2-p290 :085 > MyClass.new.delay.create_profile_photo(347,'http://www.google.com/images/srpr/logo3w.png')
(0.4ms) COMMIT
=> #<Delayed::Backend::ActiveRecord::Job id: 42, priority: 0, attempts: 0, handler: "--- !ruby/object:Delayed::ProfileableMethod\nobject:...", last_error: nil, run_at: "2012-12-08 21:40:06", locked_at: nil, failed_at: nil, locked_by: nil, queue: nil, created_at: "2012-12-08 21:40:06", updated_at: "2012-12-08 21:40:06">
ruby-1.9.2-p290 :085 > Photo.count
(0.3ms) SELECT COUNT(*) FROM "photos"
=> 0
어떤 생각?
나는 이런 종류의 문제 때문에 DJ를 포기했다. 관심이 없으면 데몬을 다시 시작하면로드 할 수 있습니까? – simonmorley