Sto tentando di creare un'ereditarietà di bundle semplice come indicato in here e ho riscontrato un problema con i percorsi. Sto usando le annotazioni per il routing. Quando registro il mio pacchetto figlio in AppKernel.php, tutti i percorsi dei pacchetti parent vengono persi.Associazione di bundle Symfony2 che perde le route dei pacchetti padre
Per quello che ho capito dalla documentazione Symfony2 dovrebbe cercare tutti i file, inclusi i percorsi, prima dal bundle figlio e poi dal pacchetto genitore. Ora che non sta succedendo, sembra che vengano caricati solo i controller di bundle figlio.
Nel mio bambino fasci di file Bundle ho implementato la funzione getParent come indicato, e nel mio routing.yml ho:
ParentBundle:
resource: "@Parent/Controller/"
type: annotation
prefix: /admin/
che ha lavorato bene prima della eredità.
Ho verificato che il sistema funziona correttamente se include tutti i file del controller separatamente in routing.yml ma questo sembra un modo molto macchinoso per far funzionare l'ereditarietà in quanto desidero sovrascrivere solo alcune parti del pacchetto genitore (non tutte controllori).
Il profilo mostra entrambi i miei pacchetti come attivi.
anche 3 anni dopo trovo questo utile, anche se un po 'inaspettato, anche se estendi i controller nello stesso pacchetto, le annate di routing genitore saranno ignorate, quindi se vuoi avere un codice condiviso, devi ricorrere a un tratto o usare un SharedController da cui tutti si estendono ma senza percorsi in esso – DarkMukke
Salvato il mio giorno. Grazie mille per la tua soluzione –
anche al 2017 questa è un'informazione molto utile. Serbatoi per questo! –