0

大家好,我正在使用我模块中的安装程序将新的 EAV 产品属性添加到默认属性集中。到目前为止它工作得很好,但有两件小事困扰着我。

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,

问题是这两个值都没有设置为可见。我究竟做错了什么?

4

3 回答 3

0

is_visible_on_front 更改为 visible_on_front 然后检查。

于 2013-03-12T04:22:48.547 回答
0

我没有对属性本身进行此操作,但是在您的代码中尝试同时使用“整数”1 和“字符串”“1”,看看它是否有效。

于 2013-03-12T02:17:28.810 回答
0

在 stackoverflow 找到答案: Magento 模块设置/安装脚本

安装类应该从

Mage_Catalog_Model_Resource_Eav_Mysql4_Setup

现在安装程序知道附加属性和它的工作就像一个魅力。

于 2013-03-12T20:01:05.943 回答