0

セットアップを使用してテーブルを作成しましたが、スクリプトがテーブルを作成していません。setup_module テーブルからエントリも削除しましたが、それでも機能しませんでした。インストールbin/magento setup:install --convert-old-scripts=1以来、使用して宣言型スキーマへの移行を試みましたが、元のスクリプトが最初に機能する必要があります。Magento 2.3

magento-path/app/code/Folder/CustomModule/Setup/InstallSchema.php

<?php
/**
* Copyright © 2016 Magento. All rights reserved.
* See COPYING.txt for license details.
*/

namespace Folder\CustomModule\Setup;
use Magento\Framework\Setup\InstallSchemaInterface;
use Magento\Framework\Setup\ModuleContextInterface;
use Magento\Framework\Setup\SchemaSetupInterface;

/**
 * @codeCoverageIgnore
 */
class InstallSchema implements InstallSchemaInterface
{
    /**
    * {@inheritdoc}
    * @SuppressWarnings(PHPMD.ExcessiveMethodLength)
    */
    public function install(SchemaSetupInterface $setup, ModuleContextInterface $context)
    {
          /**
          * Create table 'shop_ocxe'
          */
          $setup->startSetup();

          $table = $setup->getConnection()
              ->newTable($setup->getTable('shop_ocxe'))
              ->addColumn(
                  'id',
                  \Magento\Framework\DB\Ddl\Table::TYPE_SMALLINT,
                  null,
                  ['identity' => true, 'unsigned' => true, 'nullable' => false, 'primary' => true],
                  'Shop ID'
              )
              ->addColumn(
                  'url',
                  \Magento\Framework\DB\Ddl\Table::TYPE_TEXT,
                  255,
                  ['nullable' => false],
                  'Url'
              )
              ->addColumn(
                  'name',
                  \Magento\Framework\DB\Ddl\Table::TYPE_TEXT,
                  255,
                  ['nullable' => false],
                  'Name'
              )
              ->addColumn(
                  'phrase',
                  \Magento\Framework\DB\Ddl\Table::TYPE_TEXT,
                  255,
                  [],
                  'Phrase'
              )
              ->addColumn(
                  'logo',
                  \Magento\Framework\DB\Ddl\Table::TYPE_TEXT,
                  255,
                  [],
                  'Logo'
              )
              ->addColumn(
                  'banner',
                  \Magento\Framework\DB\Ddl\Table::TYPE_TEXT,
                  255,
                  [],
                  'Banner'
              )
              ->addColumn(
                  'author',
                  \Magento\Framework\DB\Ddl\Table::TYPE_TEXT,
                  255,
                  ['nullable' => false],
                  'Author'
              )
              ->addColumn(
                  'author_photo',
                  \Magento\Framework\DB\Ddl\Table::TYPE_TEXT,
                  255,
                  ['nullable' => false],
                    'Author Photo'
              )
              ->addColumn(
                  'desc',
                  \Magento\Framework\DB\Ddl\Table::TYPE_TEXT,
                  '64k',
                  [],
                  'Desc'
              )
              ->addColumn(
                  'status',
                  \Magento\Framework\DB\Ddl\Table::TYPE_SMALLINT,
                  null,
                  ['nullable' => false, 'default' => 1],
                  'Status'
              )
              ->addColumn(
                  'created_at',
                  \Magento\Framework\DB\Ddl\Table::TYPE_TIMESTAMP,
                  null,
                  ['nullable' => false, 'default' => \Magento\Framework\DB\Ddl\Table::TIMESTAMP_INIT],
                  'Created At'
              )->addColumn(
                  'updated_at',
                  \Magento\Framework\DB\Ddl\Table::TYPE_TIMESTAMP,
                  null,
                  ['nullable' => false, 'default' => \Magento\Framework\DB\Ddl\Table::TIMESTAMP_INIT_UPDATE],
                  'Updated At'
              )->setComment("Shop Table");
          $setup->getConnection()->createTable($table);

          $setup->endSetup();
      }
}
4

2 に答える 2