Il File di Configurazione filters.yml
Il file di configurazione ~filters.yml~ descrive la catena di filtri da
eseguire per ogni richiesta.
Il file di configurazione principale filters.yml per un'applicazione
può essere trovato nella cartella apps/NOME_APP/config/.
Come accennato nell'introduzione, il file filters.yml trae benefici dal
meccanismo di configurazione a cascata
e può includere delle costanti.
Il file di configurazione filters.yml contiene una lista di definizioni
di filtri con nome:
---
FILTRO_1:
# definizione del filtro 1
FILTRO_2:
# definizione del filtro 2
# ...
Quando il controllore inizializza la catena dei filtri per una richiesta,
legge il file filters.yml e registra i filtri, cercando il nome della
classe del filtro (class) e i parametri (param) da usare per
configurare l'oggetto filtro:
---
NOME_DEL_FILTRO:
class: NOME_DELLA_CLASSE
param: { ARRAY DI PARAMETRI }
I filtri sono eseguiti nello stesso ordine con cui appaiono nel file di configurazione. Siccome symfony esegue i filtri in catena, il primo filtro è eseguito all'inizio e alla fine.
La classe class dovrebbe estendere la classe base sfFilter.
Se la classe del filtro non può essere caricata automaticamente, si può
definire un percorso file, che verrà incluso prima della creazione
dell'oggetto:
---
NOME_DEL_FACTORY:
class: NOME_DELLA_CLASSE
file: PERCORSO_ASSOLUTO_DEL_FILE
Quando si sovrascrive il file `filters.yml, occorre mantenere tutti i filtri ereditati dal file di configurazione:
---
rendering:
security:
cache:
execution:
Per togliere un filtro, occorre disabilitarlo impostando la chiave
enabled a false:
---
NOME_DEL_FACTORY:
enabled: false
Ci sono due nomi speciali di filtri: rendering e execution. Entrambi
sono obbligatori e sono identificati dal parametro type. Il filtro
rendering dovrebbe essere sempre il primo registrato e il filtro
execution dovrebbe essere sempre l'ultimo:
---
rendering:
class: sfRenderingFilter
param:
type: rendering
# ...
execution:
class: sfExecutionFilter
param:
type: execution
Il file di configurazione
filters.ymlè messo in cache come file PHP; il processo è gestito automaticamente dalla classe ~sfFilterConfigHandler~.
Filtri
rendering
Configurazione predefinita:
---
rendering:
class: sfRenderingFilter
param:
type: rendering
Il filtro rendering si occupa dell'output della risposta inviata al
browser. Essendo il primo filtro che dovrebbe essere registrato, è
anche l'ultimo ad avere la possibilità di gestire la richiesta.
security
Configurazione predefinita:
---
security:
class: sfBasicSecurityFilter
param:
type: security
Il filtro security verifica la sicurezza, richiamando il metodo
getCredential() dell'azione. Una volta che le credenziali sono
state acquisite, verifica che l'utente abbia le stesse credenziali,
richiamando il metodo hasCredential() dell'oggetto user.
Il filtro security deve avere come tipo security.
Una configurazione più granulare del filtro security può essere
fatta tramite il file di configurazione
security.yml.
Se l'azione richiesta non è configurata come sicura in
security.yml, il filtrosecuritynon sarà eseguito.
cache
Configurazione predefinita:
---
cache:
class: sfCacheFilter
param:
condition: %SF_CACHE%
Il filtro cache gestisce la cache delle azioni e delle pagine.
Inoltre si occupa di aggiungere i necessari header HTTP per la
cache della risposta (Last-Modified, ETag, Cache-Control,
Expires, ...).
execution
Configurazione predefinita:
---
execution:
class: sfExecutionFilter
param:
type: execution
Il filtro execution è al centro della catena dei filtri e si
occupa dell'esecuzione di tutte le azioni e le viste.
Il filtro execution dovrebbe essere l'ultimo filtro registrato.
インデックス
Document Index
関連ページリスト
Related Pages
Introduzione
Il Formato YAML
I principi dei file di configurazione
Il file di configurazione settings.yml
Il file di configurazione factories.yml
Il file di configurazione generator.yml
Il file di configurazione databases.yml
Il file di configurazione security.yml
Il file di configurazione cache.yml
Il file di configurazione routing.yml
Il file di configurazione app.yml
Il File di Configurazione filters.yml
Il file di configurazione view.yml
Altri file di configurazione
Eventi
Task
Appendice A - Licenza
日本語ドキュメント
Japanese Documents
2011/01/18 Chapter 17 - Extending Symfony
2011/01/18 The generator.yml Configuration File
2011/01/18 Les tâches
2011/01/18 Emails
2010/11/26 blogチュートリアル(8) ビューの作成
リリース情報
Release Information
- 2.0 : 2.0.10(2011/02/06)
Symfony2日本語ドキュメント - 1.4 : 1.4.16(2011/12/13)
Changelog
