有沒有方法添加自定義EAV屬性,創建新實體時自動設置爲其默認值?Magento:添加一個自定義的EAV屬性,使用其缺省值自動創建實體創建
我設置eav_attribute.is_required
到1
和eav_attribute.default_value
到0
(默認值),但是當我創建一個新的對象它不會自動設置該屬性。
順便說一句,EAV實體類型是shipment
。在銷售數據存儲在平面表格之前,我正在進行1.3.2.4的安裝。
編輯
喬納森天問「你怎麼加屬性?」
在ModuleDir \ SQL \ module_setup \ mysql4安裝-0.1.0.php,我有以下代碼:
$eav = new Mage_Eav_Model_Entity_Setup('sales_setup');
$eav->addAttribute('shipment', 'fieldname', array('type' => 'int'));
我也有更高版本的Magento的(銷售後,該代碼實體去從EAV到平表):
$w = $this->_conn;
$table = $this->getTable('sales_flat_shipment');
$w->addColumn($table, 'fieldname', 'int');
$w->addKey($table, 'fieldname', 'fieldname', 'index');
喬納森天問「你有沒有檢查該屬性添加正確的領域eav_attribute?」
是的,它已被添加到eav_attribute。該屬性是可設置的並且可以獲取。
你是如何添加屬性?在一個SQL設置文件或擴展`Mage_Eav_Model_Entity_Setup` ?.你有沒有檢查過該屬性是添加到`eav_attribute`與正確的字段? – 2010-12-02 02:50:22