【问题标题】:Duplicating attribute in MagentoMagento中的复制属性
【发布时间】:2010-11-26 15:28:26
【问题描述】:

在 Magento v1.4 中以编程方式复制(产品)属性的正确方法是什么?我对 Magento 还很陌生,并尝试了一些事情来了解它:)

到目前为止,我想出了以下内容,

$attribute = Mage::getModel('catalog/resource_eav_attribute')->load($id_of_attribute_to_copy);
$data = $attribute->getData();
$data['attribute_id'] = '';
$data['attribute_code'] = 'new_attribute_name';
$attribute->setData($data);
$attribute->save();

但属性似乎作为两个主表之间的关系存在,eav_attributecatalog_eav_attribute。当我执行代码时,只创建了catalog_eav_attribute 的条目,导致eav_attribute 出现外键错误(其中尚不存在新记录)。希望有人能帮忙。

【问题讨论】:

  • 最好的方法是从核心模型中打开一些设置文件,看看描述属性或制作 print_r($attribute->getData());查看可能的值或使用 addData() 而不是 setData()

标签: attributes magento magento-1.4


【解决方案1】:

这里有一些关于创建属性的典型方法的资源。

Advanced ORM - Part 7
Installing custom attributes with your module

【讨论】:

  • 这个。您需要配置您的 Magento 系统以使用和了解附加属性。
【解决方案2】:

上一条评论中的链接无效,但我认为需要:

$mainEavAttribute = [logic..]
$eavSetup->addAttribute(Product::ENTITY,'new_attribute',$mainEavAttribute);

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-12-10
    • 1970-01-01
    相关资源
    最近更新 更多