No último post, falamos sobre o Magento 2 Upgrade Schema. Dando continuidade aos nossos estudos, veremos como trabalhar com Magento 2 Upgrade Data.
Magento 2 Upgrade Data
A classe Setup/UpgradeData é utilizada quando precisamos adicionar conteúdo a uma classe já criada.
Voltando ao nosso módulo, criamos a classe UpgradeData, conforme abaixo:
<?php namespace ForMage\Blog\Setup; use Magento\Framework\Setup\ModuleContextInterface; use Magento\Framework\Setup\ModuleDataSetupInterface; use Magento\Framework\Setup\UpgradeDataInterface; class UpgradeData implements UpgradeDataInterface { /** * @param ModuleDataSetupInterface $setup * @param ModuleContextInterface $context */ public function upgrade( ModuleDataSetupInterface $setup, ModuleContextInterface $context ) { $setup->startSetup(); if (version_compare($context->getVersion(), '0.0.3', '<')) { $setup->getConnection()->insert( $setup->getTable('post'), [ 'title' => 'CONTEÚDO UPGRADEDATA', 'description' => 'DESCRIÇÃO ADICIONADA PELO UPGRADEDATE', 'status' => false ] ); } $setup->endSetup(); } }
E modifique o etc/module.xml para a versão 0.0.3, como se segue:
<?xml version="1.0"?> <config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:framework:Module/etc/module.xsd"> <module name="ForMage_Blog" setup_version="0.0.3"/> </config>
Após isso, execute o comando php bin/magento setup:upgrade
.
Dúvidas? Posta aí!
Um abraço.