2010-12-07 5 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을 발견했습니다,하지만 여전히 관련이 있는지 잘 모르겠어요 지금 sales_flat_order과 조금 다르게 보입니다 내가 믿는 sales_order라는 테이블에 대해 이야기하기 때문에 (Magento의 버전 1.4.1.1로).

이 방법을 사용해야합니까? 그렇다면 - 나는 sales_flat_quote_itemsales_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);` 

?

감사합니다, 샤니

답변

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 이야기에 새 열이 자동으로 추가됩니다. 다른 entites에 대해서도 마찬가지입니다. 주문에 속성을 추가 할 때

    $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

+0

@ Shani1351 첫 번째 인수에서'order' 대신'order_item'과'quote_item'을 지정하면됩니다. '주문'이 예제로 사용되었습니다. –

+3

감사합니다. Ivan - 나중에 참고할 내용으로,이 대답의 요점은 표준'Mage_Eav_Model_Entity_Setup'이 아니라'Mage_Sales_Model_Mysql4_Setup'을 사용하는 것입니다. 'Mage_Sales_Model_Mysql4_Setup' 메쏘드는 표준 셋업 클래스가 찾는 정식'entity_type_id' 값을 가지고 있지 않은'order_item'과'quote_item' 객체를위한'addAttribute'를 가로 챌 것입니다. –

4

중요한 것은 알고 : 당신이 너무 따옴표에 동일한 속성을 추가 할 필요가 답장을 보내

+1

@ fbtb - 모든 경우에 이것이 필요한지 또는 이유가 무엇인지 알고 계십니까? – pcronin

+0

@pcronin 고객이 제출하기 전 모든 주문 - 견적으로 저장되므로 견적은 아직 배치되지 않은 주문입니다. – fbtb

관련 문제