我尝试升级我的自定义Magento模块但由于某种原因它无法正常工作。
我的模块配置:
<?xml version="1.0"?>
<config>
<modules>
<MVE_CategoryAttribute>
<version>0.1.1</version>
</MVE_CategoryAttribute>
</modules>
<global>
<resources>
<categoryattribute_setup>
<setup>
<module>MVE_CategoryAttribute</module>
<class>Mage_Eav_Model_Entity_Setup</class>
</setup>
<connection>
<use>default_setup</use>
</connection>
</categoryattribute_setup>
</resources>
</global>
</config>
安装脚本(mysql4-install-0.1.0.php):
<?php
$this->startSetup();
$this->addAttribute('catalog_category', 'imagetext', array(
'group' => 'General Information',
'input' => 'textarea',
'type' => 'varchar',
'label' => 'Tekst op afbeelding',
'backend' => '',
'visible' => 1,
'required' => 0,
'user_defined' => 1,
'global' => Mage_Catalog_Model_Resource_Eav_Attribute::SCOPE_GLOBAL,
));
$this->endSetup();
?>
升级脚本(mysql4-upgrade-0.1.0-0.1.1.php):
<?php
$this->startSetup();
$this->updateAttribute('catalog_category', 'imagetext', 'global', Mage_Catalog_Model_Resource_Eav_Attribute::SCOPE_STORE);
$this->endSetup();
?>
答案 0 :(得分:6)
检查core_resource中模块的版本号。如果它仍为0.1.0,则清除xml缓存并重新启动页面,它应该运行。如果它已经是0.1.1并且您知道尚未应用数据库更改,请将值更改回0.1.0,清除xml缓存并刷新页面。
答案 1 :(得分:2)
试试这个:
<?php
$installer = $this;
$installer->startSetup();
$setup = new Mage_Eav_Model_Entity_Setup('core_setup');
$setup->updateAttribute('catalog_category', 'imagetext', 'is_global', Mage_Catalog_Model_Resource_Eav_Attribute::SCOPE_STORE);
$installer->endSetup();
答案 2 :(得分:1)
确保满足3个条件: