i progettisti di Rails sicuramente non intendevano che fosse possibile. Ogni volta che si affida allo script runner delle rotaie, che non è supportato per i plugin montabili (per una buona ragione - non c'è un'applicazione da eseguire con il corridore). Forse è possibile trovare un altro modo per eseguire il codice configurando ogni volta che si utilizza un diverso ruby executer (console rails, IRB, ecc.) Ma questo probabilmente avrà risultati non voluti poiché non è nel contesto di un'applicazione, quindi si ha nessuna configurazione o ambiente.
Tuttavia, si specifica: The cron I think would not be able to start from the main app since mountable engines are supposed to be isolated
, ma l'ho provato e non è il caso. Finché lo spazio dei nomi è appropriato per il runner, il file di configurazione di ogni applicazione troverà l'attività appropriata nel codice del plugin e sarà in grado di eseguirlo. Per favore fatemi sapere se per qualche motivo non funzionerà per le vostre particolari esigenze.
fonte
2012-08-29 21:29:56
Sono ancora relativamente nuovo per i motori di rotaie e motori montabile quindi questa è una curva di apprendimento. Quindi, da quello che hai detto, mi viene chiaro un po 'che mi mostra che posso eseguire cron direttamente sui modelli di Engine, ma l'esecuzione dovrebbe essere avviata dall'applicazione host. Essendo isolato pensavo che i motori montabili fossero solo questo, scatola nera ma da quello che hai citato ho fatto un tentativo e funziona davvero bene per me. Segnerò correttamente questa domanda poiché ha risolto correttamente il problema del mio motore delle rotaie e mi ha dato un po 'più di conoscenza dei motori. – pieterk