Đang cố gắng để xếp hàng một công việc với delayed_job như sau:ngoại lệ Weird với delayed_job
Delayed::Job.enqueue(BackgroundProcess.new(current_user, object))
CURRENT_USER và đối tượng không phải là con số không khi tôi in chúng ra. Điều kỳ lạ là đôi khi làm mới trang hoặc chạy lệnh lại hoạt động!
Dưới đây là ngoại lệ dấu vết:
Delayed::Backend::ActiveRecord::Job Columns (44.8ms) SHOW FIELDS FROM `delayed_jobs`
TypeError (wrong argument type nil (expected Data)):
/Users/.rvm/rubies/ruby-1.9.1-p378/lib/ruby/1.9.1/yaml.rb:391:in `emit'
/Users/.rvm/rubies/ruby-1.9.1-p378/lib/ruby/1.9.1/yaml.rb:391:in `quick_emit'
/Users/.rvm/rubies/ruby-1.9.1-p378/lib/ruby/1.9.1/yaml/rubytypes.rb:86:in `to_yaml'
vendor/plugins/delayed_job/lib/delayed/backend/base.rb:65:in `payload_object='
activerecord (2.3.9) lib/active_record/base.rb:2918:in `block in assign_attributes'
activerecord (2.3.9) lib/active_record/base.rb:2914:in `each'
activerecord (2.3.9) lib/active_record/base.rb:2914:in `assign_attributes'
activerecord (2.3.9) lib/active_record/base.rb:2787:in `attributes='
activerecord (2.3.9) lib/active_record/base.rb:2477:in `initialize'
activerecord (2.3.9) lib/active_record/base.rb:725:in `new'
activerecord (2.3.9) lib/active_record/base.rb:725:in `create'
vendor/plugins/delayed_job/lib/delayed/backend/base.rb:21:in `enqueue'
Cảm ơn rất nhiều điều này đã giải quyết được vấn đề của tôi – Tam
Việc tuần tự hóa đối tượng gốc không phải là điều khủng khiếp. Người ta phải luôn luôn kéo lại một bản sao mới trong khi trong công việc; tuy nhiên, nó cung cấp cho bạn tùy chọn xem bản sao trước của hồ sơ nếu cần. – Nick