0

我想为订单添加一个属性,以下步骤在测试环境中有效,但在产品环境中无效,两个环境之间存在差异,产品环境是实现数据库主从分离,但测试环境不是。步骤:
1.因为在数据库表*core_resource*是
code;| version
sales_setup|0.9.40
所以我修改了文件/app/code/core/Mage/Sales/etc/config.xml
<modules>
<Mage_Sales>
<version>0.9.41</version>
</Mage_Sales>
...
</modules>
2.添加文件/app/code/core/Mage/Sales/ sql/sales_setup/mysql4-upgrade-0.9.40-0.9.41.php
内容为:
$installer = $this;
$installer->addAttribute('order', 'prx', array(
'type' => 'varchar',
'backend_type' => 'varchar',
'frontend_input' => 'varchar',
'is_user_defined' => true,
'label' => 'prx',
'visible' => true,
'required' => false,
'user_defined' => false,
'searchable' => false,
'filterable' => false,
'comparable' => false,
'default' => ''
));

谁能告诉我为什么,谢谢!

如果脚本只是在表*eav_attribute*中添加记录?我可以通过 sql 脚本添加记录吗?

4

1 回答 1

0

这取决于 Magento 版本。从版本 1.4.0.1 开始,销售表不再存在。它们是简单的平桌。您可以添加任何您想要的sales_flat_order列。您作为示例找到的更新脚本在 1.4 版之前,这就是它具有这种外观的原因。

于 2013-09-23T07:50:03.537 回答