如何使用自定义模块的安装脚本更改 Magento 的默认表?
我需要使用安装脚本更改“eav_attribute”表的“电话”列。我的意图是将该表中的“is_required”字段设置为 1...,以通过验证。
我对magento有点陌生,任何帮助将不胜感激。
1)声明设置资源和模块版本以触发模块的设置工作流程:
<config>
<Your_Module>
<version>0.1.0</version> <!-- whatever -->
</Your_Module>
<global>
<resources>
<your_module_setup>
<setup>
<module>Your_Module</module>
</setup>
</your_module_setup>
</resources>
</global>
</config>
2)创建一个安装脚本Your/Module/sql/your_module_setup/install-0.1.0.php(作为风格问题)使用customer/setup
该类:
$installer = Mage::getResourceModel('customer/setup','customer_setup');
/* @var $installer Mage_Customer_Model_Resource_Setup */
$installer->startSetup();
//Proposed edit is correct: entity is customer_address not customer
//$installer->updateAttribute('customer','telephone','is_required',false);
$installer->updateAttribute('customer_address','telephone','is_required',false);
$installer->endSetup();
清除配置缓存,点击任何页面,这应该会更新属性参数。