Jakbyście to rozwiązali. Mam aplikację w Railsach, która będzie służyła ludzikom do wprowadzenie pewnych danych i to wszystko. W tle tego ma pracować inna aplikacja, która na podstawie tych danych będzie generoała raporty i rozsyłaa je na odpowiednie maile. (to będzie taki system do raportowania ilości abonentów do nadawców telewizyjnnych)
Oczywiścvie mogę to zrobić w czystym ruby, łączyć się do bazy, odpowiednio ją odpytać, przetworzyć, wygenerować pdf’a i wysłać go na odpowiedni adres, ale może jest możliwość aby skorzystać z dobrodziejstw Railsów. Zdecydowanie łatwiej jest dobrać się do danych przy pomocy ActiveRecord. Aplikacja będzie uruchamiana raz dziennie z crona.
Ok, ale z tego co widzę to te dwa rozwiązania to załatwiają mi tylko crona. cron nie jest dla mnie problemem i spokojnie mogę sobie z linuksowego crona uruchomić ruby app.rb
Bardziej mi chodzi czy mogę jakoś i jeśli tak to jak skorzystać z moich modeli, z wygodnego dostępu do bazy, która zapewnia mi rails. Co musiałbym zaimportować/dołączyć do aplikacji.
Faktycznie. Zaczałem już działać z rake task.
A tak na marginesie, gdybym chciał stworzyć np. dodatkowe klasy. Jaka jest konwencja? Gdzie je powinienem przechowywać?
Ja mam konwencję taką, że jeśli te klasy są związane bardzo z aplikacją (np. używają modeli), to przechowuję je w jakimś podkatalogu w app/ (np. app/services). Zostaną one wtedy automatycznie dołączone do aplikacji, tzn. nie trzeba nigdzie pisać require. Jeśli natomiast nie używają innych klas aplikacji lub są jakimiś moimi rozszerzeniami gemów, to dobry jest katalog lib. Wtedy jednak trzeba jeszcze explicite je dołączyć (dyrektywa require np. w jakimś initializerze).