• Développement
  • Magento
  • Culture Web

Install Schema Generator

anthony_360f3c3132
Anthony Grutter, Chief Technical Officer - Co-fondateur
Le 9 mars 2016
ISG_9613d8cc51
  • ecommerce

Lecture :5 minutes

Transformez facilement vos tables en un fichier setup !

La sortie de Magento 2 pousse de nombreuses agences à réécrire leurs extensions pour les adapter à la nouvelle version, notamment tous les scripts d’ajout ou de modification de tables. Comment générer facilement un fichier d’installation de tables pour Magento 2 ?

Le code de Magento a évolué dans son architecture. La création / modification de tables se fait désormais dans le fichier «InstallSchema.php», situé dans le dossier «Setup» à la racine de votre module. Notre extension permet de générer en toute facilité le fichier InstallSchema à partir des données pré-existantes !

 

 

Que fait Install Schema Generator ?

Install Schema Generator (ISG) est un outil de développement qui permet d’accélérer la création des scripts d’installation des tables pour un module Magento 2. Il génère un fichier setup à partir des tables de votre base de données Magento.

En quoi ISG peut-il vous être utile ?

ISG peut être principalement utilisé dans le cas d’une migration d’une extension Magento 1.x ayant ses propres tables vers Magento 2. Vous avez certainement apporté des modifications sur ces tables au cours de différents patchs. Vous devriez alors réécrire un script d’installation pour ces tables en tenant compte de toutes ces mises à jour. Il s’agirait d’une tâche longue et fastidieuse. Grâce à ISG, vous pouvez directement télécharger le script d’installation à partir des tables de votre base de données, le tout sans écrire une seule ligne !

Vous pouvez aussi utiliser ISG pour développer plus rapidement votre extension Magento 2. Fini de perdre du temps sur le setup ! En effet, il vous suffit de créer directement vos tables depuis l’interface de Phpmyadmin, dans la base de données de votre Magento 2. Vous n’avez plus qu’à générer le script d’installation InstallSchema. Vous évitez ainsi les éventuelles erreurs de frappe ou de programmation possibles lorsqu’on écrit son script InstallSchema.

Le meilleur moyen de le savoir c’est de le tester, on l’installe ?

Magento 2 utilise Composer comme gestionnaire de dépendance. Ainsi, tous les modules doivent être installés à partir de celui-ci. Pour plus de détail sur la manière d’installer l’extension Install Schema Generator, rendez-vous sur notre dépôt :
https://bitbucket.org/blackbirdagency/magento2-extensions-isgenerator/

Comment fonctionne-t-il et comment l’utiliser ?

Tout d’abord, vous devez savoir qu'Install Schema Generator ne lit que les tables de la base de données de votre Magento 2. Si vous souhaitez récupérer le script d’installation à partir des tables d’une base de données Magento 1.x, vous devez d’abord les exporter vers la base de données de votre Magento 2.

Une fois Install Schema Generator installé sur votre Magento 2, rendez-vous sur la page d’administration et suivez les étapes suivantes :

  • Accédez au menu System et cliquez sur « Install Schema Generator » ;
  • Renseignez le namespace de votre module dans le 1er onglet (optionnel) :

ISG premier onglet

  • renseignez les tables pour générer le script InstallSchema dans le 2e onglet :

ISG second onglet

  • cliquez sur « Generate & download file » pour récupérer votre script InstallSchema.php ;
  • placez-le directement dans le dossier setup à la racine de votre module.

Lors de la génération, ISG lit d’abord les tables sélectionnées et extrait la configuration de chaque colonne y compris les contraintes, index et clés étrangères. Ces données permettent alors de construire le script de création des tables.
Le code issu de la génération respecte les conventions de codage de Magento !

Cependant, si vous récupérez le script d’installation pour des tables d’une base de données Magento 1.x, vous devez vérifier que les contraintes et clés étrangères sont les bonnes. Certaines tables ont subi des modifications, ont été renommées ou encore supprimées dans Magento 2.

Blackbird, expert en création et gestion d'une boutique e-commerce Magento, vous accompagne dans toutes vos réalisations digitales. Contactez-nous pour plus d'informations.

Nos articles

Découvrir aussi

  • Lors de nos développements en local, nous utilisons généralement PHPMyAdmin ou l’outil embarqué de PHPStorm, car ils sont simples d’utilisation, rapides et complets. Mais quand il s’agit de manipuler des bases de préproduction et production, c’est un peu plus délicat, car il n’est pas recommandé d’installer un PHPMyAdmin sur ces environnements pour une question de sécurité. Mais du coup comment faire ? Faire du SQL en CLI, connecté en SSH ? Non merci, pas très pratique.

  • MagentoDéveloppementExtensions

    Créez un mega menu sur Magento 2

    Advanced Mega Menu Manager, c'est une des dernières extensions développée par Blackbird. Elle permet de créer autant de menus que vous voulez et de toutes les sortes possibles et ce, sur Magento 2. Mais quel est l'intéret pour un e-commerçant de mettre en place un Mega Menu ? Améliorer l'expérience utilisateur, faciliter la navigation, faire de la promotion : les bonnes raisons ne manquent pas pour tout e-commerçant dont le store regroupe plus d'une centaine d'articles.

  • DéveloppementE-CommerceMagento

    La gestion du multisite sur Magento 2

    L’un des nombreux avantages de Magento est la gestion native du multisite. On peut facilement créer de nombreux websites dans la même instance de Magento et imaginer une infinité de cas différents. On peut par exemple avoir besoin d’un nouveau store sur Magento pour pouvoir gérer un nouveau dépôt physique avec des produits et des stocks différents. Plusieurs storeviews permettent de faire des sites multilingues ou multidevises. On peut également avoir des catalogues de produits différents et les associer aux stores.

  • La terminologie peut prêter à confusion : le passage vers Magento 2 se traduit plus par un changement de technologie qu’une migration vers une nouvelle version. Cette transition, devenue indispensable à l’heure où Adobe abandonne la maintenance sur M1, représente un réel défi technique et organisationnel pour les agences et e-commerçants qui veulent se mettre à jour. Petit tour d’horizon des principaux pièges à éviter.

Abonnez-vous au blog pour ne rien louper