2012-06-03 19 views
18

Soy nuevo en delayed_job y estoy empezando a escribir mis propios "trabajos personalizados". Cada trabajo personalizado es básicamente una clase regular de ruby, pero no estoy seguro de dónde se almacenan normalmente estas clases de trabajo personalizadas dentro de la estructura de directorios del proyecto.Rails + Delayed Job: ¿Dónde está el lugar correcto para almacenar clases de trabajo personalizadas?

estoy pensando lib, pero lib parece ser un cajón de basura en este punto:/(tal vez eso es bien aunque)

Gracias !!

+1

Creé una carpeta 'delayed_jobs' en'/app' pero es una cuestión de gusto :) – apneadiving

+1

Tengo algunas en 'lib /', algunas en 'app/models /', y algunas que son clases internas en otras clases Solo tengo una falta de respuesta aquí: ponlos donde tenga sentido. –

+0

@apneadiving ¿entonces simplemente nombra sus clases 'WhateverJob'? –

Respuesta

16

La forma común de hacerlo es crear la carpeta jobs en la carpeta app. Pero lo único que debe preocuparse es que sean sus archivos, hágalo de la manera que le resulte más cómoda.

+0

Escogiendo esto como la respuesta porque parece ser común aquí y es la forma en que decidí ir con mi aplicación. ¡Gracias! –

+2

agregar olvidé una cosa ... puede colocar el trabajo dentro de uno de su modelo (ofc si el trabajo está directamente relacionado con ese modelo) y usar 'handle_asynchronously: method_name' –

+1

¡gracias! De hecho, lo leí en algún lugar de los documentos (o de la pila). 'handle_asynchronously: my_method' es sinónimo de' delay.my_method' –

Cuestiones relacionadas