Symfony 1.1 e il Validation Framework

Riprendiamo l’argomento lasciato in sospeso nel precendete articolo sulle novità di Symfony 1.1 introducendo il Validation Framework che andrà a sostituire l’attuale validatore dei dati ed a mio parere uno dei maggiori punti di forza della nuova versione di Symfony.

Fabien è stato molto preciso riguardo all’argomento, ammettendo che l’attuale validatore è molto limitato e che riscriverlo sarebbe stato troppo oneroso. Pertanto è stato deciso di approciarsi in tutt’altro modo realizzando un vero e proprio framework, che può anche essere usato indipendentemente da Symfony, e lasciando la vecchia libreria come legacy e permettendone l’uso inserendo la stringa compat_10: on nel settings.yml della propria applicazione.

sfValidators La cosa più interessante del nuovo Validation Framework è che sarà possibile creare logiche booleane per le proprie validazioni componendo e scomponendo criteri in base alle proprie esigenze, inoltre il principio base della classe è che ogni oggetto è stateless e può usare al suo interno altri validatori.

Inoltre è stato introdotto il concetto di sfValidatorSchema, e sono certo che questo stuzzicherà sicuramente l’appetito di molti sviluppatori che hanno sempre dovuto litigare per ottenere validatori efficienti e semplici da mantenere.

Il Validator Schema non è altro che un insieme di campi ai quali sono associate delle regole di validazione (e che sono quindi dei veri e propri oggetti sfValidator). I Validator Schema saranno quindi utilissimi per chi deve validate un insieme di dati provenienti da una form con una certa coerenza logica (ad esempio per verificare che il CF sia coerente con il nome, la data ed il luogo di nascita).

Inoltre gli schema, essendo in tutto e per tutto degli oggetti sfValidator, sono stateless e potranno essere usati più volte senza problemi, per questo motivo sarà possibile creare delle librerie di validazione universali ed imho presto vedremo degli schema per ogni tipo di dato, dalle carte di credito ai numeri di telefono.

Infine ogni oggetto Validator può essere esportato (ed importato) come stringa aumentandone la leggibilità e la fruibilità.

3 Replies to “Symfony 1.1 e il Validation Framework”

Leave a Reply

Your email address will not be published. Required fields are marked *