2012-05-02 18 views
7

Come si modificano le proprietà di un attributo eav durante l'installazione di un modulo.Impostazione modulo Magento - modifica attributo prodotto su non richiesto

In particolare, desidero modificare un attributo di prodotto da obbligatorio a non richiesto.

Attualmente sto unendo gli attributi di prodotto aggiornati nella chiamata getDefaultEntities nell'installazione dei miei moduli ma sta dando risultati strani.

Ad esempio:

public function getDefaultEntities() 
    {   
     return array(
      'catalog_product' => array(
       'entity_attribute_collection' => 'catalog/product_attribute_collection',   
       'attribute_model' => 'catalog/resource_eav_attribute', 
       'table' => 'catalog/product', 
       'entity_model' => 'catalog/product', 
       'additional_attribute_table' => 'catalog/eav_attribute', 
       'attributes' => array(
        'short_description' => array('required'=> false) 
       ) 
      ) 
     ); 

    } 

risultati nel campo short_description perdendo la sua etichetta Frontend

risposta

18
/* @var $installer Mage_Catalog_Model_Resource_Setup */ 
$installer->updateAttribute('catalog_product','short_description','is_required',0); 
+2

noti che AddAttribute() ha una traduzione in campo utilizzando _prepareValues ​​(). Ma updateAttribute() * non * usa questo. Quindi è impostato correttamente qui su 'is_required', ma in addAttribute, useresti 'required' per la stessa cosa. – Melvyn

Problemi correlati