嘿伙计我在我的模块中使用安装程序将新的EAV产品属性添加到Default属性集。到目前为止,它的工作效果很好,但有两件小事让我烦恼。
public function getDefaultEntities(){
return array(
'catalog_product' => array(
'entity_model' => 'catalog/product',
'attribute_model' => 'catalog/resource_eav_attribute',
'table' => 'catalog/product',
'additional_attribute_table' => 'catalog/eav_attribute',
'entity_attribute_collection' => 'catalog/product_attribute_collection',
'attributes' => array(
'disable_sale' => array(
'group' => 'General',
'label' => 'Disable Sale',
'type' => 'int',
'input' => 'select',
'source' => 'eav/entity_attribute_source_boolean',
'global' => Mage_Catalog_Model_Resource_Eav_Attribute::SCOPE_STORE,
'is_visible_on_front' => true,
'used_in_product_listing' => true,
)
)
)
);
}
我希望我的属性集在产品详细信息页面和默认目录列表中可见。
'is_visible_on_front' => true,
'used_in_product_listing' => true,
问题是这两个值都没有设置为可见。 我做错了什么?
答案 0 :(得分:0)
我没有使用属性本身,但是在代码中尝试“整数”1和“字符串”“1”并查看它是否有效。
答案 1 :(得分:0)
is_visible_on_front更改为visible_on_front,然后检查。
答案 2 :(得分:0)
在stackoverflow找到答案: Magento module setup/installer script
安装程序类应该从
扩展Mage_Catalog_Model_Resource_Eav_Mysql4_Setup
现在安装程序知道其他属性,它的工作方式就像魅力一样。