Как воссоздать таблицу в Magento - PullRequest
1 голос
/ 11 октября 2011

Я бросил стол вручную в magento. Теперь я хочу, чтобы мой код воссоздал ту же таблицу. Я написал инструкцию create в папке app/code/local/namespace/my_module/sql, например

DROP TABLE IF EXISTS {$this->getTable('cod')};
CREATE TABLE {$this->getTable('cod')} (
    `cod_id` int(11) unsigned NOT NULL auto_increment,
    `status` smallint(6) NOT NULL default '0',
    'amount' int(11) unsigned NOT NULL,
    `created_time` datetime NULL,
    `update_time` datetime NULL,
    PRIMARY KEY (`cod_id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

Как будет выполняться этот запрос, чтобы он мог воссоздать таблицу ...

1 Ответ

0 голосов
/ 11 октября 2011

Этот запрос выполняется при первом запуске magento с вашим модулем.После этого magento добавляет строку в таблицу core_resource my_module_setup |0,01 |0,01 , что означает, что ваш модуль был успешно установлен.Итак, чтобы воссоздать таблицу, вы должны удалить строку my_module_setup из таблицы core_resource и снова запустить любую страницу magento.Обратите внимание, что столбцы version & data_version позволяют вам поддерживать версию модуля в актуальном состоянии.Если вы измените версию модуля в config.xml на более высокую, чем в core_resource , magento будет искать mysql4-upgrade-0.1.0-0.1.1.php .

...