4

我正在使用 Magento 版本 1.4.1.1,我想在sales_flat_quote_item表中保存一个值(并将其传递给sales_flat_order_item)。

我找到了这个教程,但我不确定它是否仍然相关(与 Magento 版本 1.4.1.1),因为它谈到了一个名为 的表sales_order,我相信它现在sales_flat_order看起来有点不同。

这种方法还应该有效吗?如果是这样 - 我可以使用它吗?我应该在推荐中添加 sales_flat_quote_item什么sales_flat_order_itementity_type_id

`insert into eav_attribute('entity_type_id','attribute_code','attribute_model','backend_model','backend_type','backend_table','frontend_model','frontend_input','frontend_input_renderer','frontend_label','frontend_class','source_model','is_global','is_visible','is_required','is_user_defined','default_value','is_searchable','is_filterable','is_comparable','is_visible_on_front','is_html_allowed_on_front','is_unique','is_used_for_price_rules','is_filterable_in_search','used_in_product_listing','used_for_sort_by','is_configurable','apply_to','position','note','is_visible_in_advanced_search'  )  
values(11, 'my_new_column', null, '', 'static', '', '', 'text', '','',null, '', 1,1,1,0,'',0,0,0,0,0,0,1,0,0,0,1,'',0,'',0);`

如果在新的 Magento 版本中这不是这样做的方法,我应该怎么做?

谢谢, 沙尼

4

2 回答 2

12
  1. 创建一个新模块,其扩展自自己的设置类,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>
    
  2. 使用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();
    
于 2010-12-07T15:59:44.533 回答
4

向订单添加属性时要知道的重要事项:您也需要向引号添加相同的属性(至少在我的情况下,这解决了所有问题)

于 2012-08-09T12:19:25.220 回答