Удалить атрибут категории


8

Я вставил 2 атрибута категории, используя модуль с файлом mysql4-install-0.1.0.phpв папке sql:

$installer = $this;

$installer->startSetup();

$installer->addAttribute('catalog_category', 'short_description', array(
    'type'          => 'text',
    'label'         => 'Short Description',
    'input'         => 'textarea',
    'group'         => 'General',
    'global'        => Mage_Catalog_Model_Resource_Eav_Attribute::SCOPE_STORE,
    'visible'       => true,
    'required'      => false
));
$installer->addAttribute('catalog_category', 'static_block', array(
    'type'          => 'text',
    'label'         => 'Brand',
    'input'         => 'text',
    'group'         => 'General',
    'global'        => Mage_Catalog_Model_Resource_Eav_Attribute::SCOPE_STORE,
    'visible'       => true,
    'required'      => false
));

$this->endSetup();

Как я могу удалить их сейчас. Я попытался вставить это в файл sql, как предлагалось в других ответах:

$installer = $this;
$installer->startSetup();
$installer->removeAttribute('catalog_category', 'short_description');
$installer->removeAttribute('catalog_category', 'static_block');
$installer->endSetup();

Но ничего не происходит. Должен ли я создать еще один модуль?

Ответы:


14

Вам нужно создать другой скрипт обновления.
Если скрипт установки имеет версию, 0.1.0создайте файл upgrade-0.1.0-0.1.1.phpс таким содержимым:

$installer = $this;
$installer->removeAttribute('catalog_category', 'short_description');
$installer->removeAttribute('catalog_category', 'static_block');

Затем перейдите config.xmlи измените versionтег с 0.1.0на 0.1.1.

Очистите кеш и обновите любую страницу.

В качестве побочного узла ... не используйте $installer->startSetup();сценарии установки / обновления, которые удаляют данные. Вызов его отключает проверку внешнего ключа, и вы можете получить данные зомби в своей базе данных.


Это работало безупречно на версии 1.9. Но я должен сделать это и на magento версии 1.5, и это не удаляет поле из бэкэнда. Удалил кеш конечно. Может ли это быть конфигурация, которая блокирует это? или что то конкретное до 1.5?
Клавдиу Крянгэ,
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.