PHPBlog.it

Database con symfony: il file schema.yml

Continuiamo la serie di nostri post riguardo symfony, parlando oggi di un particolare file importante in qualunque applicazione di un livello non elementare (per la quale symfony sarebbe quindi eccessivo), necessitante in particolare di database.

symfony utilizza come ORM (Object Relational Mapper) Propel, il quale si appoggia a sua volta sull’abstraction layer Creole. Propel per funzionare correttamente ha bisogno di avere una completa descrizione delle tabelle del database. A questo è adibito il file schema.yml dentro alla directory config. Vediamone uno di esempio, contenente la descrizione delle tabelle di un database di un blog.

propel:
  weblog_post:
    _attributes: { phpName: Post }
    id:
    title:       varchar(255)
    excerpt:     longvarchar
    body:        longvarchar
    created_at:
  weblog_comment:
    _attributes: { phpName: Comment }
    id:
    post_id:
    author:      varchar(255)
    email:       varchar(255)
    body:        longvarchar
    created_at:

Ecco, è relativamente semplice. Innanzitutto questa configurazione è fatta utilizzando YAML, un linguaggio di markup che al contrario di XML è più coinciso e sbrigativo. Per ulteriori informazioni consultate il sito ufficiale.

Entriamo ora nei particolari del file; prima di tutto vediamo che come elemento padre c’è “propel:”. Questo è un elemento necessario, e non può essere omesso. Dopo di questo, ogni elemento figlio sarà una tabella del database, col suo vero nome all’interno del DBMS (in questo caso weblog_post e weblog_comment). In seguito il campo particolare “_attributes” definirà alcuni parametri, come il più importante phpName, ovvero il nome che avrà la nostra classe in PHP.

Essendo un argomento troppo vasto da trattare in un singolo post, vi linko ora delle fonti dove trovare dei suggerimenti per la scrittura del vostro file schema.yml

Il prossimo post parlerà degli ultimi dettagli di base per conoscere symfony, e poi partiremo con la realizzazione di un piccolo forum con questo ottimo framework. Alla prossima!

Commenti

  • Questo articolo è stato segnalato su ZicZac.it….

  • diggita.it scrive:

    Database con symfony: il file schema.yml…

    Continuiamo la serie di nostri post riguardo symfony, parlando oggi di un particolare file importante in qualunque applicazione di un livello non elementare (per la quale symfony sarebbe quindi eccessivo), necessitante in particolare di database….

  • Lascia un Commento

    *