ORM custom: ActiveQuery e dirty tracking — articolo

> ORM custom: ActiveQuery e dirty tracking

Pillar article sul query builder fluent, il tracking delle modifiche e il pattern ActiveRecord del framework.

Luigi Iadicola
~1 min lettura
#PHP #ORM #Database
ORM custom: ActiveQuery e dirty tracking
ORM custom: ActiveQuery e dirty tracking

Un ORM pensato per essere leggibile

ActiveQuery offre una API fluent per costruire query senza scrivere SQL a mano: where(), orderBy(), join(), paginate() e molto altro. Le query vengono generate dal builder specifico per il driver in uso, garantendo compatibilita tra SQLite, MySQL, MariaDB e PostgreSQL.

Ogni modello traccia automaticamente le modifiche ai propri attributi. Quando chiami save(), solo i campi effettivamente cambiati vengono inclusi nella UPDATE, evitando scritture inutili sul database.

Caratteristiche chiave

  • Query builder fluent con supporto join, aggregati e subquery
  • Dirty tracking: isDirty(), getDirtyAttributes()
  • Hydration automatica: le righe diventano istanze del modello
  • Type casting configurabile per ogni campo
  • Metodo toSql() per debug rapido delle query

Il vantaggio di un ORM custom e il controllo totale: nessuna magia nascosta, ogni comportamento e tracciabile nel codice.

altri articoli
progetti correlati