2015-12-09 5 views
0

Я хочу, чтобы добавить товар в магнитооптических кодах grammatically.My, чтобы сохранить продукт ниже: -Добавить продукт в Magento Программного

 $product = Mage::getModel('catalog/product'); 
     $product 
     ->setAttributeSetId(4) 
     ->setTypeId('simple') 
     ->setCreatedAt(strtotime('now')) 
     ->setSku($product_sku) 
     ->setName($product_name) 
     ->setWeight($product_weight) 
     ->setStatus($Status) 
     ->setTaxClassId(2) 
     ->setManufacturer($product_manufacturer) 
     ->setCountryOfManufacture('US') 
     ->setPrice($product_price) 
     ->setCost($product_price) 
     ->setSpecialFromDate(strtotime('now')) 
     ->setSpecialToDate() */ 
     ->setMsrpEnabled(4) 
     ->setMsrpDisplayActualPriceType(4) 
     ->setMsrp($wholesale_price) 
     ->setDescription($product_short_desc) 
     ->setShortDescription($product_short_desc) 
     ->setVisibility(4); 

     $mediaArray = array(
      'thumbnail' => $imgpath, 
      //'small_image' => $imagepath, 
      // 'image'  => $imagepath, 
     ); 

     $product->setStockData(array(
       'use_config_manage_stock' => 1, //'Use config settings' checkbox 
       'manage_stock' => 1, //manage stock 
       'min_sale_qty' => 1, //Minimum Qty Allowed in Shopping Cart 
       'max_sale_qty' => 200, //Maximum Qty Allowed in Shopping Cart 
       'is_in_stock' => 1, //Stock Availability 
       'qty' => $product_quantity //qty 
      ) 
     ) 
     ->setCategoryIds($categories); //assign product to categories 

     if ($product->save()) 
     { 
      $_product = Mage::getModel('catalog/product') 
      ->loadByAttribute('sku', $product_sku); 
      echo 'Added successfully'; 
     } 
    } 

После выполнения приведенной выше коды, я получил следующее сообщение об ошибке: -

Фатальная ошибка: Uncaught исключение «PDOException» с сообщением «SQLSTATE [23000]: Integrity ограничение

нарушение: 1452 Невозможно добавить или обновить дочернюю строку: ограничение внешнего ключа не удается (DBNAME., скованность FK_CAT_PRD_ENTT_ATTR_SET_ID_EAV_ATTR_SET_ATTR_SET_ID FOREIGN KEY (attribute_set_id ) Лит eav_attribute_set (attribute_set_id) O)»в/вар/WWW/ххх/Библиотека/Zend/Db/Заявление/PDO .php: 228

Стек след:

0 /var/www/xxx/lib/Zend/Db/Statement/Pdo.php(228): PDOStatement- > выполнить (Array)

1/вар/WWW/ххх/Библиотека/Varien/Db/Заявление /Pdo/Mysql.php(110): Zend_Db_Statement_Pdo- > _execute (массив

)

2 /var/www/xxx/app/code/core/Zend/Db/Statement.php(291): Varien_Db_Statement_Pdo_Mysql- >

_execute

(массив)

3/вар /www/xxx/lib/Zend/Db/Adapter/Abstract.php(479): Zend_Db_Statement- > выполнить (Array)

4/вар/WWW/ххх/Библиотека/Zend/Db/Adapter/PDO/Абстрактные .php (238): Zend_Db_Adapter_Abstract- > запрос ('INSERT

INTO `са ... ', Array)

5 /var/www/xxx/lib/Varien/Db/Adapter/Pdo/Mysql.php(428): Zend_Db_Adapter_Pdo_Abstract- > Цюй в

/var/www/xxx/lib/Zend/Db/Statement/Pdo.php on line 234

ответ

0

Я получил ответ: - Я установить идентификатор категории, используя

->setCategoryIds($categories); //assign product to categories 

А теперь я

->setCategoryIds(array($categories)); //assign product to categories 

где $ категории = '2,3,5';