Il livello della vista può essere configurato modificando il file
di configurazione view.yml
.
Come accennato nell'introduzione, il file view.yml
beneficia del
meccanismo di configurazione a cascata,
e può includere delle costanti.
caution
Questo file di configurazione è per lo più deprecato a favore di helper usati direttamente nei template o di metodi chiamati dalle azioni.
Il file di configurazione view.yml
contiene un elenco di configurazioni
della vista:
NOME_VISTA_1: # configurazione NOME_VISTA_2: # configurazione # ...
note
Il file di configurazione view.yml
viene messo in cache come file
PHP; tale processo è gestito autonomamente dalla
classe sfViewConfigHandler
.
Layout
Configurazione predefinita:
default: has_layout: true layout: layout
Il file di configurazione view.yml
definisce il layout predefinito
usato dall'applicazione. Per impostazione predefinita, il nome è layout
,
quindi symfony decora ogni pagina con il file layout.php
, che si trova
nella cartella templates/
dell'applicazione. Si può anche disabilitare
del tutto il processo di decorazione impostando la voce ~has_layout~
a false
.
tip
Il layout viene disabilitato automaticamente per le richieste XML HTTP e per tutti i tipi di contenuto che non siano HTML, a meno che non sia specificato diversamente in modo esplicito.
Fogli di Stile
Configurazione Predefinita:
default: stylesheets: [main.css]
La voce stylesheets
definisce un array di fogli di stile da usare per
la vista corrente.
note
L'inclusione dei fogli di stile definiti in view.yml
può essere fatta
manualmente con l'helper include_stylesheets()
.
Se si definiscono diversi file, symfony li includerà nello stesso ordine in cui sono definiti:
stylesheets: [main.css, foo.css, bar.css]
Si può anche cambiare l'attributo media
oppure omettere il suffisso
.css
:
stylesheets: [main, foo.css, bar.css, print.css: { media: print }]
Questa impostazione è deprecata in favore dell'helper use_stylesheet()
:
<?php use_stylesheet('main.css') ?>
note
Nel file di configurazione predefinito view.yml
, il file riferito è
main.css
e non /css/main.css
. Di fatto, entrambe le definizioni sono
equivalenti, poiché symfony aggiunge /css/
ai percorsi relativi.
JavaScript
Configurazione Predefinita:
default: javascripts: []
La voce javascripts
definisce un array di file JavaScript da usare per
la vista corrente.
note
L'inclusione dei file JavaScript definiti in view.yml
può essere fatta
manualmente con l'helper include_javascripts()
.
Se si definiscono diversi file, symfony li includerà nello stesso ordine in cui sono definiti:
javascripts: [foo.js, bar.js]
Si può anche omettere il suffisso .js
:
javascripts: [foo, bar]
Questa impostazione è deprecata in favore dell'helper use_javascript()
:
<?php use_javascript('foo.js') ?>
note
Se si usano percorsi relativi, come foo.js
, symfony aggiunge /js/
all'inizio.
Meta e HTTP Meta
Configurazione Predefinita:
default: http_metas: content-type: text/html metas: #title: symfony project #description: symfony project #keywords: symfony, project #language: en #robots: index, follow
Le impostazioni http_metas
e metas
consentono di definire dei meta
tag da includere nel layout.
note
L'inclusione dei meta tag definiti in view.yml
può essere fatta
manualmente con gli helper include_metas()
e include_http_metas()
.
Queste impostazioni sono deprecate in favore dell'uso di puro HTML nel layout, per i meta statici (come il content-type) o in favore di uno slot, per i meta dinamici (come il titolo o la descrizione).
tip
Se ha senso, il meta HTTP content-type
è modificato automaticamente
per includere il set di caratteri definito nel
file di configurazione settings.yml
,
se non è già presente.
This work is licensed under the Creative Commons Attribution-Share Alike 3.0 Unported License license.