我試圖用Mage更新Magento中的客戶羣價格(因爲我無法在SOAP V2 API中找到這樣做的方法)。我找到了一個StackOverflow示例,但它不適用於我。我正在使用的代碼如下:Magento更新產品的客戶羣價格
<?php
include_once '../App/Mage.php';
Mage::app();
$productID = $_GET["id"];
$product = Mage::getModel('catalog/product')->load($productID);
$groupPricingData = array(array('price_id'=>1,'website_id'=>0,
'cust_group'=>3, 'price'=>666));
$product->setData('group_price',$groupPricingData);
$product->save();
echo "true";
?>
如果我使用具有任何客戶價格的產品,則會出現以下錯誤。如果我嘗試沒有現有價格的產品,它沒有錯誤,但不創建客戶羣組價格。
SCREAM: Error suppression ignored for
(!) Fatal error: Uncaught exception 'Mage_Eav_Model_Entity_Attribute_Exception' with
message 'SQLSTATE[23000]: Integrity constraint violation: 1062
Duplicate entry '24-0-3-0' for key 'CC12C83765B562314470A24F2BDD0F36'' in
C:\wamp\www\magento\app\code\core\Mage\Core\Model\Config.php on line 1348
(!) Mage_Eav_Model_Entity_Attribute_Exception: SQLSTATE[23000]:
Integrity constraint violation: 1062 Duplicate entry '24-0-3-0' for
key 'CC12C83765B562314470A24F2BDD0F36' in
C:\wamp\www\magento\app\code\core\Mage\Core\Model\Config.php on line 1348
嗨,我忘了我發佈了這個問題!我也找不到有關如何做到這一點的可靠文件,最後採取了第二種方法,我實際上將團隊價格加載到一個臨時變量中,按照您所建議的方式將其清除,然後重新設置它們,根據需要修改並再次保存。然而,它非常耗費資源,而且最近我遇到了一個問題,那就是刪除和重新創建方法導致MySQL達到了ID數量的上限 - 在這一點上,除非手動重新啓動SQL,否則不會保存新的價格。謝謝 –