![]() |
|
The symfony Reference BookIl file di configurazione databases.yml |
|
You are currently reading "The symfony Reference Book" which is licensed under the Creative Commons Attribution-Share Alike 3.0 Unported License license.

|
This work is licensed under a Creative Commons Attribution-Share Alike 3.0 Unported License. |
La configurazione databases.yml consente la configurazione della
connessione al database. È usata da entrambi gli ORM preinstallati con symfony: Propel e
Doctrine.
Il file principale di configurazione databases.yml per un progetto può essere trovato
nella cartella config/.
La maggior parte delle volte, tutte le applicazioni di un progetto condividono lo stesso database. Questo è il motivo per cui il principale file di configurazione del database è nella cartella
config/del progetto. Naturalmente si può non tenere conto della configurazione predefinita, definendo un file di configurazionedatabases.ymlnelle cartelle di configurazione dell'applicazione.
Come discusso in sede di introduzione, il file databases.yml è
consapevole dell'ambiente, trae beneficio
dal meccanismo di configurazione a cascata,
e può includere costanti.
Ogni connessione descritta nel file databases.yml deve comprendere un nome, un nome
del gestore di classe del database e un insieme di parametri (param) usati per configurare
l'oggetto database:
NOME_CONNESSIONE:
class: NOME_CLASSE
param: { ARRAY DI PARAMETRI }
Il nome class dovrebbe estendere la classe base sfDatabase.
Se la classe che gestisce il database non può essere autocaricata, un file percorso può essere
definito e sarà automaticamente incluso prima che il factory sia creato:
NOME_CONNESSIONE: class: NOME_CLASSE file: PERCORSO_ASSOLUTO_DEL_FILE
Il file di configurazione
databases.ymlè salvato nella cache come file PHP; il processo è gestito automaticamente dalla classesfDatabaseConfigHandler.
La configurazione del database può anche essere configurata utilizzando il task
database:configure. Questo task aggiorna il filedatabases.ymlin base ai parametri che gli vengono passati.
Configurazione predefinita:
dev:
propel:
param:
classname: DebugPDO
debug:
realmemoryusage: true
details:
time: { enabled: true }
slow: { enabled: true, threshold: 0.1 }
mem: { enabled: true }
mempeak: { enabled: true }
memdelta: { enabled: true }
test:
propel:
param:
classname: DebugPDO
all:
propel:
class: sfPropelDatabase
param:
classname: PropelPDO
dsn: mysql:dbname=##NOME_PROGETTO##;host=localhost
username: root
password:
encoding: utf8
persistent: true
pooling: true
I seguenti parametri possono essere personalizzati nella sezione param:
| Chiave | Descrizione | Valore predefinito |
|---|---|---|
classname |
La classe adattatore per Propel | PropelPDO |
dsn |
Il DSN PDO (obbligatorio) | - |
username |
Nome utente per il database | - |
password |
Password per il database | - |
pooling |
Abilita il pooling | true |
encoding |
L'insieme di caratteri predefinito | utf8 |
persistent |
Per creare connessioni persistenti | false |
options |
Un insieme di opzioni per Propel | - |
debug |
Opzoni per la classe DebugPDO |
n/a |
La voce debug definisce tutte le opzioni descritte nella
documentazione
di Propel. Il seguente YAML mostra le opzioni disponibili:
debug:
realmemoryusage: true
details:
time:
enabled: true
slow:
enabled: true
threshold: 0.001
memdelta:
enabled: true
mempeak:
enabled: true
method:
enabled: true
mem:
enabled: true
querycount:
enabled: true
Configurazione predefinita:
all:
doctrine:
class: sfDoctrineDatabase
param:
dsn: mysql:dbname=##PROJECT_NAME##;host=localhost
username: root
password:
attributes:
quote_identifier: false
use_native_enum: false
validate: all
idxname_format: %s_idx
seqname_format: %s_seq
tblname_format: %s
I seguenti parametri possono essere personalizzati sotto la sezione param:
| Chiave | Descrizione | Valore predefinito |
|---|---|---|
dsn |
Il DSN PDO (obbligatorio) | - |
username |
Nome utente per il database | - |
password |
Password per il database | - |
encoding |
L'insieme di caratteri predefinito | utf8 |
attributes |
Un insieme di attributi per Doctrine | - |
I seguenti attributi possono essere personalizzati sotto la sezione attributes:
| Chiave | Descrizione | Valore predefinito |
|---|---|---|
quote_identifier |
Per mettere gli identificatori tra virgolette | false |
use_native_enum |
Per usare l'enum nativo | false |
validate |
Per abilitare la validazione dei dati | true |
idxname_format |
Formato per i nomi degli indici | %s_idx |
seqname_format |
Formato per i nomi delle sequenze | %s_seq |
tblname_format |
Formato per i nomi delle tabelle | %s |
If you find a typo or an error, please register and open a ticket.
If you need support or have a technical question, please post to the official user mailing-list.