如何在commercetools平台中的订单项中使用自定义字段

时间:2015-10-16 09:18:20

标签: commercetools

我实际上必须为commercetools平台中的每个订单项添加一些自定义字段。

订单项文档=> http://dev.sphere.io/http-api-projects-carts.html#line-item

在那里我发现了这个:=> http://dev.sphere.io/http-api-projects-custom-fields.html#custom-fields

但显然,自定义字段的文档在显示和#34;如何使用它们方面太少了#34;。有人有经验吗?一个json的例子会很精彩,有更多的解释。提前谢谢。

1 个答案:

答案 0 :(得分:2)

您可以使用资源类型ID" 订单项"为订单项创建自定义类型或" 自定义订单项" (http://jsfiddle.net/realdeepak/Lbu8dvLx/1/) - 示例:

 {
  "key": "myLineItemType",
  "name": { "en": "my line item type" },
  "resourceTypeIds": ["line-item"],
  "fieldDefinitions": [
    {
      "type":{
          "name":"LocalizedString"
      },
      "name":"myField",
      "label":{
        "en":"my field",
        "de":"mein feld"
      },
      "required":false,
      "inputHint":"SingleLine"
    }
  ]
}

然后有两种方法可以使用新的自定义类型和新字段。

  1. 您可以使用" addLineItem "设置自定义类型和创建订单项时的值。更新购物车资源的操作 - 例如,请参阅此JSON示例:

    {
      "version": 19,
      "actions": [{
        "action": "addLineItem",
        "productId": "9f19f37d-ec10-4ccf-9ff8-e5a295de0c3e",
        "variantId": 1,
        "quantity": 1
      }],
      "custom": {
            "typeKey": "myLineItemType",
            "fields": {
              "myField": {
                "en":"whats up",
                "de":"was ist los"
              }
            }
         }
    }
    
  2. 您可以使用" setLineItemCustomType "设置订单项的自定义类型。更新购物车上的操作以使该字段可用。这可以与现有订单项一起使用。

  3. http://dev.sphere.io/http-api-projects-custom-fields.html#customizable-resource