2010-12-07 2 views
4

Я работаю с Magento версии 1.4.1.1, и хочу сохранить значение в таблице sales_flat_quote_item (и передать его sales_flat_order_item).Magento - Добавление нового столбца в sales_flat_quote_item и sales_flat_order_item

Я нашел this tutorial, но я не уверен, если она по-прежнему актуальна (для Magento версии 1.4.1.1), так как это говорит о таблице под названием sales_order, который я считаю, сейчас sales_flat_order и выглядит немного по-другому.

Должен ли этот метод работать? Если это так - Могу ли я использовать его для sales_flat_quote_item и sales_flat_order_item и что entity_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, как я должен делать это?

Спасибо, Шани

ответ

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(); 
    
+0

Спасибо за ваш ответ. Как я уже сказал, я хочу добавить столбец в sales_flat_quote_item и sales_flat_order_item (item, а не sales_flat_order). Он все еще работает одинаково? – Shani1351 2010-12-08 09:59:38

+0

@ Shani1351 Он работает одинаково, просто укажите `order_item` и` quote_item` вместо `order` в первом аргументе. В качестве примера использовался «порядок». – 2010-12-08 10:24:57

4

важно знать при добавлении атрибутов заказов: вам нужно добавить те же атрибуты, кавычки, тоже (по крайней мере, в моем случае это решило все проблемы)