モジュールは削除されましたが、Magento2のデータベースにテーブルが残っています


10

magento2のインストーラースクリプトを使用して、1つのモジュール/拡張機能を作成しました。

その後それを削除しましたが、データベース内のテーブルはまだ残っています。

モジュール/拡張機能を完全にアンインストールし、データベースから拡張機能/モジュールのテーブルを削除する方法を誰かに教えてもらえますか?

回答:


11

composerを介してモジュールをインストールする場合、Setup/Uninstall.php実行時に実行されるファイルを作成することができますbin/magento module:uninstall -r [Namespace]_[Module]

Uninstall.phpファイルには、次のようになります。

<?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');
        }
    }
}

モジュールを手動でインストールした場合は、データベースを手動でクリーンアップする必要があります。また、モジュールが追加したテーブルも削除する必要があります。


モジュールを手動でインストールしました
Surya

次に、自分でデータベースをクリーンアップする必要があります。
マリウス

1
これと同じ問題があります。テーブルを手動で削除しましたが、を使用して再インストールできませんinstaller script
HiMs 2016
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.