Stiamo creando un SaaS che monitora determinate risorse. Ciò significa che acquisisce i dati, li salva e li visualizza in un'interfaccia web.Come condividere un modello Symfony2 con diversi progetti
Per questo, abbiamo pochi componenti che abbiamo creato con/si stanno muovendo per Symfony2:
- un'applicazione frontend web, dove gli utenti possono visualizzare i propri dati
- un back-end di applicazioni web di amministrazione, dove abbiamo creare nuovi monitor, utenti, ecc.
- un'API
- un'applicazione che recupera i dati ricevuti da una coda e li inserisce nel nostro database (questo è ora uno script separato, ma sto pensando di rielaborarlo come Comando di symfony chiamato da cron)
Tutte queste quattro applicazioni condividono lo stesso modello di: il nostro database principale che contiene tutti gli utenti, monitor e dati.
La mia domanda è: come dovrei strutturare questi progetti in Symfony2?
- Creo un bundle separato che contiene le entità per il mio database e i quattro progetti includono quelle entità e funzionano con esse?
- Posso creare una directory 'modello' nella mia cartella app Symfony, che è usata da tutti i bundle nella mia directory/src?
- Qualche altro modo più semplice per farlo?
L'opzione 1 sembra un po 'strana, dal momento che un pacchetto, a mio parere, ha bisogno di routing, visualizzazioni, controller, ecc. Usarlo solo per le entità sarebbe un po' strano.
L'opzione 2 sembra accettabile, poiché la cartella/app è considerata "comune" in ogni caso per tutto ciò che si trova nella cartella/src (poiché, ad esempio, anche i parametri sono presenti in tale cartella). Tuttavia, non esiste una cartella 'modello' lì, e non sono sicuro che ci dovrebbe essere?
Capisco che ci sono pochissime "buone pratiche" già disponibili per Symfony 2, poiché è nuovo di zecca. Ma volevo vedere se ci sono pratiche più preferibili rispetto ad altre, secondo la tua opinione.
Qualsiasi feedback è più che benvenuto. Grazie in anticipo,
Dieter
Questo è quello che dovevo sapere :) Grazie! – Dieter