2013-03-11 74 views
1

我遇到了導入具有自定義源模型的產品屬性值的問題(因此在屬性編輯頁面中沒有可見的選項)。 只是它不適用於選項ID值或選項標籤。Magento - 自定義源模型的導入屬性

當我試圖出口產品具有這種屬性,出現了一個錯誤

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

有人可以幫助我?

回答

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(..)它決定使用標籤,因爲該屬性不在屬性數組中,該值應該是用於。

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

所以,答案是CSV文件中使用的標籤的屬性:該陣列由Mage_ImportExport_Model_Import_Entity_Abstract聲明。或者覆蓋Mage_ImportExport_Model_Import_Entity_Abstract以將您的屬性獲取到產品導入過程中預期的值而不是標籤的屬性數組中。