Modul dihapus tetapi Tabel tersisa di database di Magento2


10

Saya telah membuat satu modul / ekstensi menggunakan script installer di magento2.

Setelah itu saya menghapusnya, tetapi tabel dalam database masih tetap seperti itu.

adakah yang bisa memberitahu saya cara menghapus modul / ekstensi sepenuhnya dan menghapus tabel / modul ekstensi dari database?

Jawaban:


11

Jika Anda memasang modul melalui komposer, Anda dapat membuat Setup/Uninstall.phpfile yang akan dieksekusi saat dijalankan bin/magento module:uninstall -r [Namespace]_[Module].

The Uninstall.phpfile harus terlihat seperti ini:

<?php

namespace Namespace\Module\Setup;

class Uninstall implements \Magento\Framework\Setup\UninstallInterface
{
    public function uninstall(
        \Magento\Framework\Setup\SchemaSetupInterface $setup,
        \Magento\Framework\Setup\ModuleContextInterface $context
    ) {
        if ($setup->tableExists('table_name_here')) {
            $setup->getConnection()->dropTable('table_name_here');
        }
    }
}

Jika Anda menginstal modul secara manual, Anda perlu membersihkan database Anda secara manual juga membeli menjatuhkan tabel yang ditambahkan modul.


Saya telah menginstal modul secara manual
— Surya

Maka Anda harus membersihkan sendiri database.
— Marius

1
Saya mempunyai isu yang sama. saya telah menghapus tabel secara manual tetapi saya tidak dapat menginstalnya kembali menggunakan installer script.
— HiMs
Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.