【问题标题】:Magento - import attribute with custom source modelMagento - 使用自定义源模型导入属性
【发布时间】:2013-03-11 14:17:44
【问题描述】:

我在导入具有自定义源模型的产品属性值时遇到了问题(因此属性编辑页面中没有可见选项)。 只是它不适用于选项 ID 值或选项标签。

当我尝试导出具有此属性的产品时,出现错误

Invalid option ID specified for ceneo_category_id (2278), skipping the record. (Line 1, SKU: ...)

有人可以帮我解决这个问题吗?

【问题讨论】:

    标签: magento import attributes


    【解决方案1】:

    我想我刚刚遇到了同样的问题:

    1. 使用自定义源模型创建了自定义多选属性 产品。
    2. 标签是“人类可读”并且值是字母数字 代码。
    3. 在 csv 产品导入文件中使用了字母数字代码。
    4. 试图使用 Magento 导入来加载一个产品 属性。
    5. 收到错误:“test_attr”的行中的值无效:1

    经过一些调试,这似乎是因为: - Mage_ImportExport_Model_Import_Entity_Abstract#isAttributeValid(..) 报告属性值无效(case 'multiselect' 行)。 - 这是因为它正在检查 csv 文件中的值(字母数字代码)并发现它不在此属性的有效选项列表中。这是因为它的有效选项列表包含标签。 - 选项列表包含标签而不是值/代码的原因是因为在 Mage_ImportExport_Model_Import_Entity_Abstract#getAttributeOptions(..) 它决定使用标签,因为该属性不在属性数组中应该使用该值。此数组在 Mage_ImportExport_Model_Import_Entity_Abstract 中声明:

    protected $_indexValueAttributes = array(
        'status',
        'tax_class_id',
        'visibility',
        'enable_googlecheckout',
        'gift_message_available',
        'custom_design'
    );
    

    因此,答案是在 csv 文件中使用属性的标签。或者覆盖 Mage_ImportExport_Model_Import_Entity_Abstract 以将您的属性放入属性数组中,在产品导入期间,该属性的值而不是标签。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-04-15
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多