4

製品を複製し、1 回だけの保存アクションで新しい SKU を連続して付与したいと考えています。

どうやってやるの ??

私はこのコードを試しました:

$sku = '123456';
$product = Mage::getModel('catalog/product')
   ->loadByAttribute('sku',$sku); 

$newProduct = $product->duplicate();
$newProduct->setStatus(1);
$newProduct->setSku($sku.'-v2');
$newProduct->save();

しかし、それはこの例外をスローします:

SQLSTATE[23000]: Integrity constraint violation: 1062 Duplicate entry '3569-1' for key 'IDX_STOCK_PRODUCT'

手伝ってくれてありがとう。

4

1 に答える 1

5
$newProduct->save();

実際には次のようにする必要があります。

$newProduct->getResource()->save($newProduct);
于 2013-07-02T19:53:24.133 に答える