Seidor
hombre mirando el reloj

05 de juny de 2024

Què són els Bundles de Symfony?

Un dels punts forts de Symfony és la seva escalabilitat. Permet segmentar el codi en bundles perquè el projecte pugui continuar creixent. Amb un Bundle encapsulem una o diverses funcionalitats.

Què és un bundle?

Un Bundle és un paquet, que pot contenir qualsevol cosa:

  • Codi de programació
  • Fitxers de configuració
  • Plantilles
  • CSS, JavaScript

El contingut del bundle conforma una subaplicació dins de la nostra aplicació (en definitiva és un plugin). Per exemple, es pot crear un blog en un bundle, i allí que contingui tots els fitxers necessaris per executar-lo (controladors, plantilles, fitxers css, fitxers js, …)

La nostra aplicació en Symfony pot estar tota continguda en un bundle o en diversos.

Com és l'estructura de Symfony?


Abans d'explicar com es crea un Bundle hem de conèixer l'estructura d'un projecte Symfony que està composta dels següents directoris:

  • app/: conté la configuració de l'aplicació.
  • src/: aquí es troba tot el codi PHP de l'aplicació. És el directori on per defecte tindrem els Bundles.
  • vendor/: per convenció aquí es guarden totes les llibreries creades per tercers. En principi, és un directori que no hem de tocar.
  • web/: aquest és el directori web arrel i conté tots els arxius als quals es pot accedir públicament.

Com crear un Bundle en Symfony?


Suposem que volem crear un bundle per gestionar usuaris. El crearem al directori src/Daw/UserBundle (el namespace ha d'acabar sempre per Bundle). Per tant, des de la terminal ubicada al directori del nostre projecte escrivim la següent comanda:

$ php app/console generate:bundle --namespace=Daw/UserBundle

Ens farà una sèrie de preguntes que deixarem per defecte, excepte la de format de configuració on indicarem “yml”.

Amb això el Bundle quedarà registrat a la nostra aplicació. Dins de src/Daw/UserBundle tindrem el Bundle que acabem de crear.

Per verificar que s'ha creat correctament podem seguir dos passos:

  • Verificar el fitxer app/AppKernel: on s'haurà generat una nova posició de l'array $bundles.
  • Verificar config/routing.yml: on es farà una importació del fitxer routing.yml del nostre bundle.

Potser et pugui interessar

30 de maig de 2024

Competencias clau d'un expert en ciberseguretat

Protegeix la teva empresa amb els experts en ciberseguretat de SEIDOR. Equipats amb tecnologies avançades com IBM QRadar, oferim solucions personalitzades i certificacions de primer nivell.

SEIDOR
23 de maig de 2024

Desenvolupament web amb Drupal: Creant experiències digitals sostenibles

Drupal és un CMS líder, ideal per crear experiències digitals sostenibles i personalitzades. A SEIDOR, oferim consultoria, disseny, desenvolupament i manteniment per maximitzar el rendiment de les teves aplicacions web.

SEIDOR
23 de maig de 2024

Competències i criteris per triar un expert en ciberseguretat

Busques un expert en ciberseguretat? En SEIDOR, oferim protecció avançada contra ciberatacs, garantint la integritat de les teves dades i la continuïtat operativa del teu negoci.

Cybersecurity
SEIDOR