我試圖在模塊升級腳本中以編程方式添加自定義屬性。該腳本運行正常,並創建新屬性(即它在腳本運行後出現在目錄 - >屬性 - >管理屬性下的Magento管理列表中)。Magento升級腳本創建的新屬性的可見性
起初,我用的是類Mage_Eav_Model_Entity_Setup
(推薦here和既不是「可見的」,也不如預期「apply_to」字段分別被設置(「可見的」總是假的,「應用到」仍然是「所有產品類型」,而不是用在腳本中提供的列表)。
後來我發現this,其解釋說,我應該使用Mage_Catalog_Model_Resource_Setup
,而是和已固定‘apply_to’的問題。
,但是我就是不會將屬性的「visible」屬性設置爲true。如果有人有任何想法,爲什麼'visible'屬性仍然沒有被設置爲true我很樂意聽到,謝謝!
這裏是我的升級腳本代碼:
$updater = $this; // $this is class Mage_Eav_Model_Entity_Setup
$updater->startSetup();
$updater->addAttribute('catalog_product', 'my_test_attribute', array(
'label' => 'My Test Attribute',
'type' => 'int',
'input' => 'select',
'global' => Mage_Catalog_Model_Resource_Eav_Attribute::SCOPE_GLOBAL,
'apply_to' => 'simple,configurable',
'group' => 'General',
'visible' => true,
'required' => true,
'user_defined' => true,
));
$updater->endSetup();
我在Windows 7
您能否澄清一下「屬性」的「可見」屬性? –
Tim,通過「設置可見屬性爲真」我的意思是在目錄 - >屬性 - >管理屬性下的Magento管理列表中,對於新屬性,「可見」列應設置爲「是」。 –
這個「Mage_Catalog_Model_Resource_Setup」讓我瘋狂!謝謝! –