1

我正在使用 prestashop 网络服务进行集成,

我正在发送 throw POST http://url/prestashop/api/carts?schema=blank&ws_key=MYKEY=keywords&language=1

用这个 xml

<prestashop xmlns:xlink="http://www.w3.org/1999/xlink">
   <customer>
      <id_customer>12</id_customer>
      <id_currency>1</id_currency>
      <id_lang>1</id_lang>
      <associations>
         <cart_rows>
            <cart_row>
               <CartRow>
                  <id_product>1</id_product>
                  <id_product_attribute>1</id_product_attribute>
                  <id_address_delivery>10</id_address_delivery>
                  <quantity>1</quantity>
               </CartRow>
            </cart_row>
         </cart_rows>
      </associations>
   </customer>
</prestashop>

我有两个问题想解决,

首先:我收到此错误:

<![CDATA[[SQL Error] Column 'id_product_attribute' cannot be null. From CartCore->setWsCartRows() Query was : INSERT INTO `ps_cart_product`(`id_cart`, `id_product`, `id_product_attribute`, `id_address_delivery`, `quantity`, `date_add`, `id_shop`) VALUES (18, 0, NULL, 0, 0, NOW(), 1)]]>

但是 id 属性和产品在数据库中(我检查了表 products 和 prorduct_attribute)

第二:

我只有 sku 有没有办法让 id_product 和 id_product_attribute 抛出 webservice 产品?还是我必须构建一个自定义模块或其他东西才能获得productid?

非常感谢您的帮助!

4

1 回答 1

2

你的 XML es 形成错误。请注意,查询中的错误 id_product 和 id_product_attribute 值为 0 和 NULL,因此您传递到 XML 的数据永远不会在 web 服务中找到正确的目的地。

如果您有 SKU,则必须首先通过参考(或 ean13 或 UPC 或 SKU 在 Prestashop 中代表的字段)过滤产品。这样,您将拥有 id_product 和 id_product_attribute yo 将其传递给 XML 中的 webservice。

祝你好运。

于 2016-11-25T16:17:47.533 回答