Обновление цены программно - PullRequest
1 голос
/ 06 февраля 2012

Я пытаюсь обновить несколько продуктов, которые поступают из файла XML, используя:

<code> $productid = Mage::getModel('catalog/product')->getIdBySku($url->product);
 echo 'Loaded Product: ' . $url->product;

 // Initiate product model
 $product = Mage::getModel('catalog/product');
 $product->setPrice($url->price);

 try 
 {
    $product->save();
        echo "Save / Updated"."\r\n";
  }
  catch (Exception $ex) {
        echo "<pre>".$ex."
";}

Проблема Я получаю ошибку SQL:

exception 'Mage_Eav_Model_Entity_Attribute_Exception' with message 'SQLSTATE[23000]:
Integrity constraint violation: 1062 Duplicate entry '531-0-82-1.0000-0'

Продукт с идентификатором 531 существует в моей базе данных, все, что я хочу сделать, это обновить его цену.

Что может быть причиной этого?

Ответы [ 2 ]

1 голос
/ 26 февраля 2013

Попробуйте обновить

$product = Mage::getModel('catalog/product');

и измените на

$product = Mage::getModel('catalog/product')->load($productid);

Вам необходимо загрузить продукт, чтобы обновить его атрибуты.

0 голосов
/ 06 февраля 2012

Ну, мне показалось, что мне не понравился тот факт, что у меня были многоуровневые цены на этот продукт.

Сброс их, повторная индексация, воссоздание многоуровневых цен, все кажется хорошим

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...