2012-06-03 27 views
18

Tôi mới làm quen với delay_job và tôi bắt đầu viết "công việc tùy chỉnh" của riêng mình. Mỗi công việc tùy chỉnh về cơ bản chỉ là một lớp ruby ​​thông thường nhưng tôi không chắc chắn nơi các lớp công việc tùy chỉnh này thường được lưu trữ trong cấu trúc thư mục của dự án.Đường ray + Công việc bị trì hoãn: Địa điểm chính xác để lưu trữ các lớp công việc tùy chỉnh ở đâu?

Tôi đang nghĩ đến lib, nhưng lib có vẻ là một ngăn kéo rác tại thời điểm này:/(có thể là ok)

Cảm ơn !!

+1

Tôi đã tạo thư mục 'delay_jobs' trong'/app' nhưng đó là vấn đề về hương vị :) – apneadiving

+1

Tôi có một số trong 'lib /', một số trong 'app/models /' và một số là lớp bên trong các lớp học. Tôi chỉ có một câu trả lời không ở đây: đặt chúng ở nơi có ý nghĩa. –

+0

@apneadiving làm bạn sau đó chỉ đơn giản là đặt tên cho lớp học của bạn 'WhateverJob'? –

Trả lời

16

Cách thông thường để tạo thư mục jobs trong thư mục app. Nhưng điều duy nhất bạn nên quan tâm là chúng là các tệp của bạn, do đó, hãy làm theo cách bạn thấy thoải mái nhất cho chính mình.

+0

Chọn câu trả lời này vì câu trả lời có vẻ là phổ biến ở đây và đó là cách tôi quyết định sử dụng ứng dụng của mình. Cảm ơn! –

+2

thêm tôi quên một điều ... u có thể đặt công việc bên trong một trong các mô hình của bạn (ofc nếu công việc là trực tiếp liên quan đến mô hình đó) và sử dụng 'handle_asynchronously: method_name' –

+1

cảm ơn bạn! Tôi thực sự đọc ở đâu đó trong tài liệu (hoặc ngăn xếp)! 'handle_asynchronously: my_method' đồng nghĩa với' delay.my_method' –

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