1

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

当我尝试使用此属性导出产品时,出现错误

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

有人可以帮我弄这个吗?

4

1 回答 1

1

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

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

经过一些调试,这似乎是因为: - Mage_ImportExport_Model_Import_Entity_Abstract#isAttributeValid(..)报告属性值无效(案例“多选”行)。- 这是因为它正在检查 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以将您的属性放入产品导入期间预期值而非标签的属性数组。

于 2013-08-30T11:33:14.973 回答