Engines - zrodla wiedzy

Witajcie,

Czy ktos moglby polecic mi dobre zrodlo wiedzy o praktycznym wykorzystaniu mechanizmu “engines” w aplikacji ?

Cos ponad RailsGuides. Ksiazka, tutorial, github z projektem open source do wgladu ?

Generalnie kilka rzeczy, ktore chce osiagnac:

  • jeden layout aplikacji nadrzednej, zmienia sie jedynie srodek przy wejsciu na konkretny engine
  • uprawnienia w glownej aplikacji, ale komunikujace sie z silnikiem odnosnie konkretnego obiektu
  • mozliwosc przezroczystej podmiany silnika danego typu na inny (np silnika Zamowien)
  • wspoldzielenie modeli pomiedzy silnikami oraz pomiedzy aplikacja glowna a silnikami, myslalem o czyms w stylu API - czyli, ze dany silnik jest typu Klient - wiec powinien moc zwrocic liste Klientow oraz obiekt Klienta z zewnetrznymi atrybutami
  • wspolne migracje
  • testy odpalane oddzielnie, ale z mozliwoscia odpalenia testu dla calej aplikacji

Wczesniej uzywalem silnikow do panelu admina lub systemu statystyk podlaczanego do aplikacji, ale nie mam doswiadczenia z tworzeniem jednej duzej aplikacji skladajacej sie z wielu silnikow, ktore sie ze soba komunikuja, wspoldziela pewne mechanizmy, czesc udostepniaja tylko przez API, oraz tworza spojna calosc.

Czy macie moze pomysl jak to ugryzc ? Z gory dzieki za jakakolwiek sugestie, wpisy blogowe to niestety w wiekszosci podstawy, ktore juz znam z wczesniejszego doswiadczenia z silnikami.

O, czyli tzw. odwrotne ładowanie – najpierw aplikacja, potem engine. Jak najbardziej da się zrobić, blognotkę na ten temat przygotowywałem już dawno temu, ale oczywiście nie dokończyłem i nie opublikowałem :frowning:

Dobry punkt startowy: http://pivotallabs.com/migrating-from-a-single-rails-app-to-a-suite-of-rails-engines/

1 Like

Dzieki, wlasnie cos podobnego zrobilem we wczesniejszych doswiadczeniach, przyda sie odswiezenie, w komentarzach widze troche praktycznej wiedzy.

A co generalnie sadzisz o takim podejsciu ? Obawiam sie, ze chce przekombinowac - robiac cos, co nie ma prawa dzialac dobrze w praktyce, a w teorii wydaje sie ciekawe.

Działa w praktyce, patrz trójca https://heute-kaufen.de/ - https://www.ag-heute.de/ - http://lichtspot.de/

Chociaż osobiście uważam że każdy sklep to osobna aplikacja i powinno się do tego podejść klasycznie (jedna aplikacja na sklep, elementy współdzielone do engine’u ładowanego przed aplikacją). Ale w tym projekcie zostałem przegłosowany :wink:

1 Like