Magento - Aggiunta di una nuova colonna a sales_flat_quote_item e sales_flat_order_item

StackOverflow https://stackoverflow.com/questions/4378394

  •  09-10-2019
  •  | 
  •  

Domanda

Sto lavorando con Magento versione 1.4.1.1, e voglio salvare un valore nella tabella sales_flat_quote_item (e passarlo al sales_flat_order_item).

Ho trovato questo tutorial , ma io non sono sicuro se è ancora rilevante (per Magento versione 1.4.1.1), in quanto si parla di una tabella chiamata sales_order, che credo sia ora sales_flat_order e sembra un po 'diverso.

Se questo metodo funziona ancora? Se è così - Posso usarlo per sales_flat_quote_item e sales_flat_order_item e cosa entity_type_id devo mettere in affido:

`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);`

Se questo non è il modo di fare che nella nuova versione di Magento, come devo fare?

Grazie, Shani

È stato utile?

Soluzione

  1. Creare un nuovo modulo con la propria classe di installazione esteso da Mage_Sales_Model_Mysql4_Setup o semplicemente utilizzarlo come modulo di classe di installazione in 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. Utilizzare il metodo addAttribute($entity, $attributeCode, $options) all'interno dello script di installazione, si aggiungerà automaticamente una nuova colonna alla sales_flat_order racconto. Lo stesso per gli altri entités.

    $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();
    

Altri suggerimenti

cosa importante da sapere quando si aggiungono gli attributi per gli ordini: è necessario aggiungere gli stessi attributi quotazioni, troppo (almeno nel mio caso questo ha risolto tutti i problemi)

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top