2015-06-16 12 views
7

Tôi đang cố gắng để tìm hiểu ActiveJob và tôi tạo ra một công việc đơn giản để đi qua quá trình này. Tôi khá nhiều bị mắc kẹt trên bước 1. Tôi đã có một tập tin my_job.rb trong ứng dụng/công việc. tập tin có chứa mã này:Uninitialized hằng số cho công việc của tôi ActiveJob

class MyJob < ActiveJob::Base 
    queue_as :default 

    def perform(obj) 
    puts obj 
    end 
end 

Nếu tôi đi đến giao diện điều khiển và loại của tôi trong MyJob, nó hoạt động như lớp không tồn tại ... những gì tôi bị mất?

: 001> MyJob NameError: uninitialized liên tục MyJob

Trả lời

0

Tôi nghĩ rằng đây đã được giải quyết phần nào một cách ngẫu nhiên ... tôi có lẽ khởi động lại máy chủ của tôi hay cái gì. Theo như tôi có thể nói, mỗi khi công việc được chỉnh sửa, máy chủ phải được khởi động lại để các thay đổi được chọn.

+0

Đã xảy ra lỗi tương tự, không thay đổi gì, khởi động lại máy chủ và nó đã được sửa. – BluGeni

7

Đảm bảo tên tệp của công việc kết thúc bằng "_job.rb".

Ví dụ: công việc được gọi là CheckDropboxAvailableSpaceJob phải có tên tệp là check_dropbox_available_space_job.rb, không phải check_dropbox_available_space.rb.

Đường ray sẽ không nhận ra đó là công việc nếu tên tệp không có "_job" ở cuối.

Các vấn đề liên quan