我正在使用Magento版本1.4.1.1,我想在sales_flat_quote_item
表中保存一个值(并将其传递给sales_flat_order_item
)。
我找到this tutorial,但我不确定它是否仍然相关(对Magento版本1.4.1.1),因为它谈到了一个名为sales_order
的表,我相信现在{ {1}}看起来有点不同。
此方法是否仍然有效?如果是这样 - 我可以将其用于sales_flat_order
和sales_flat_quote_item
以及sales_flat_order_item
我应该在推荐中使用的内容:
entity_type_id
如果在新的Magento版本中不能这样做,我该怎么做?
谢谢, 沙尼
答案 0 :(得分:12)
创建一个新模块,其中包含从Mage_Sales_Model_Mysql4_Setup
扩展的自定义类,或者仅将其用作config.xml
中的模块设置类:
<global>
<resources>
<your_module_setup>
<setup>
<module>Your_Module</module>
<class>Mage_Sales_Model_Mysql4_Setup</class>
</setup>
</your_module_setup>
</resources>
</global>
在设置脚本中使用addAttribute($entity, $attributeCode, $options)
方法,它会自动向sales_flat_order故事添加新列。对其他人也一样。
$installer = $this;
$installer->startSetup();
$installer->addAttribute(
'order',
'your_attribute_code',
array(
'type' => 'int', /* varchar, text, decimal, datetime */,
'grid' => false /* or true if you wan't use this attribute on orders grid page */
)
);
$installer->endSetup();
答案 1 :(得分:4)
在向订单添加属性时要知道的重要事项:您还需要为引号添加相同的属性(至少在我的情况下这解决了所有问题)