Una delle novità principali introdotte in Magento 2.3 è quella del cosiddetto declarative schema.
Ricordate la storia degli script php , necessari per la definizione e l’aggiornamento dello schema del database da una versione all’altra di Magento? Anche gli script relativi alle release intermedie venivano eseguiti.
Con questa nuova funzionalità invece, è possibile specificare lo stato finale desiderato e il sistema verrà adattato di conseguenza.
Prendete come esempio il semplice modulo creato tramite questo tutorial della documentazione ufficiale.
Per convertire i vecchi script InstallSchema (con alcune limitazioni, descritte nella documentazione ufficiale), basta lanciare il comando
bin/magento setup:install --convert-old-scripts=1
troverete il file db_schema.xml nella cartella etc del modulo.
Quindi, a questo punto potete cancellare il vecchio script InstallSchema.php. In una successiva reinstallazione del modulo, il sistema farà riferimento a quest’ultimo file xml.
Inoltre, per aggiungere ad esempio un campo alla vostra tabella, basterà inserire un nuovo nodo <column> impostando i vari attributi, quindi in un modo simile alla definizione dei campi già presenti e successivamente lanciare il comando
bin/magento setup:upgrade