如何通过安装脚本为属性设置默认值?

时间:2013-10-24 11:23:09

标签: attributes magento-1.7 product

我使用自定义模块的安装脚本创建了一个属性。一个属性是下拉列表,只有两个选项为“是”,“否”。另一个属性是文本字段。我需要通过这个脚本设置默认值。我绑了以下。但是没有用。

$th =  new Mage_Catalog_Model_Resource_Setup();  
$th->addAttribute(Mage_Catalog_Model_Product::ENTITY, 'credit', array(
            'group' => 'Prices',
            'type' => 'text',
            'backend' => '',
            'frontend' => '',
            'label' => 'Credit rewards',
            'input' => 'text',
            'global' => Mage_Catalog_Model_Resource_Eav_Attribute::SCOPE_GLOBAL,
            'visible' => true,
            'required' => false,
            'user_defined' => true,
            'default' => 'kkkkkkkk', // this is default value. but is's not setting
            'searchable' => false,
            'filterable' => true,
            'comparable' => false,
            'visible_on_front' => true,
            'visible_in_advanced_search' => true,
            'used_in_product_listing' => true,
            'unique' => false,
            'apply_to' => 'simple',
        ) );

任何建议将不胜感激。谢谢你提前。

1 个答案:

答案 0 :(得分:1)

请检查以下代码,我已经在我的一个magento安装上使用过。

$installer = $this;
$installer->startSetup();

$installer->addAttribute('catalog_product', 'offer_type', array(
        'backend'       => '',
        'frontend'      => '',
        'class' => '',
        'default'       => 'Wedding Planning',
        'label' => 'Offer type',
        'input' => 'text',
        'type'  => 'int',
        'source'        => '',
        'global'        => Mage_Catalog_Model_Resource_Eav_Attribute::SCOPE_STORE,
        'visible'       => 1,
        'required'      => 1,
        'searchable'    => 0,
        'filterable'    => 1,
        'unique'        => 0,
        'comparable'    => 0,
        'visible_on_front' => 1,
        'is_html_allowed_on_front' => 1,
        'user_defined'  => 1,
));

您还可以将此属性添加到属性集中,如下所示:

$installer->addAttributeToSet('catalog_product', $sSetId, $groupName, 'offer_type');