2010-10-18 5 views
6

Attualmente sto implementando la navigazione del sito web (menu multilivello, con la pagina corrente evidenziata). Poiché la parte di navigazione sarà inclusa per praticamente tutti i moduli, l'ho resa inizialmente parziale. Ma la logica per la selezione della "pagina corrente" è piuttosto complicata in alcune situazioni, sto pensando di usare un componente per la navigazione.Componente globale in Symfony

Il problema è che symfony consente di avere partial globali, ma non componenti globali. Quindi c'è un "bel modo symfony" per fare questo?

risposta

6

Non esiste un meccanismo per questo come tale. Di solito finisco per creare un modulo vuoto chiamato default e mettere cose del genere lì dentro.

+0

almeno si dovrebbe evitare di utilizzare "globale" come nome del modulo, è la parola riservata per parziali globali. –

+0

vero, sì. modificato. – benlumley

0

Cosa c'è di sbagliato con:

<?php include_component('someModule', 'navigationComponent') ?> 

... dove si memorizzano in qualche modulo generale (ad esempio, "generale") e lo chiamano dove si vuole, tra cui i layout. Non è abbastanza globale?

0

Questa è la vostra soluzione:

Creare il ProgettoUtente/yourapp/templates/_globalpartial.php con questo contenuto:

<?php include_component('yourmodule', 'yourcomponent'); ?> 

E utilizzare questa globalpartial.php in ProgettoUtente/yourapp/templates/layout. php