Table of Contents : Il manuale

Estensioni dei Controller

Un Component è una classe che aiuta nella logica del controller. Se avete un qualche codice e volete condividerlo tra più controller (o applicazioni), un componente è solitamente un buon posto dove porlo. Come esempio la classe core EmailComponent rende la creazione e l'invio delle mail facile. Piuttosto che scrivere un metodo del controller per ogni singolo controllo che esegue la stessa logica, potete impacchettarlo in un componente che può essere condiviso.

I Controller sono anche forniti di metodi di callback. Queste callback sono disponibili per il vostro uso nel caso vogliate inserire del codice tra le operazioni eseguite dal core di CakePHP.

  • beforeFilter(), viene eseguito prima di ogni altra azione del controllerc
  • beforeRender(), viene eseguito dopo il codice del controller ma prima che la vista venga chiamata
  • afterFilter(), viene eseguito dopo che tutta la logica del controller è stata eseguita, inclusa, la renderizzazione della vista. Non vi dovrebbero essere, quindi, differenze tra il metodo afterRender() ed afterFilter() a meno che voi non abbiate richiamato manualmente il metodo render() del vostro controller ed avete incluso una qualche logica aggiuntiva dopo questa chiamata.