[英]Shopware 6 fetch parent product through store-api
您可以嘗試搜索子代 ID 為“xyz”的產品,而不是嘗試查找某個變體的父代。 Shopware 支持過濾嵌套對象,例如“children.id”。
例如:
POST /store-api/product
Content-Type: application/json
Accept: application/json
sw-access-key: ...
sw-language-id: ...
{
"includes": {
"product": ["productNumber", "children", "name", "translated.name"]
},
"associations": {
"children": []
},
"filter": [
{"field": "children.id", "type": "equals", "value": "f87a875bc5fa47e08ea40a19ce9c5627"}
]
}
應該給你父母和孩子的輸出:
{
"entity": "product",
"total": 1,
"aggregations": [],
"page": 1,
"limit": null,
"elements": [
{
"productNumber": "252009 00-0002",
"name": null,
"children": [
{
"productNumber": "252009 00-0002.3",
"name": null,
"children": null,
"translated": {
"name": "T-Shirt Logo"
},
"apiAlias": "product"
},
{
"productNumber": "252009 00-0002.1",
"name": null,
"children": null,
"translated": {
"name": "T-Shirt Logo"
},
"apiAlias": "product"
},
{
"productNumber": "252009 00-0002.4",
"name": null,
"children": null,
"translated": {
"name": "T-Shirt Logo"
},
"apiAlias": "product"
},
{
"productNumber": "252009 00-0002.2",
"name": null,
"children": null,
"translated": {
"name": "T-Shirt Logo"
},
"apiAlias": "product"
}
],
"translated": {
"name": "T-Shirt Logo"
},
"apiAlias": "product"
}
],
"apiAlias": "dal_entity_search_result"
}
我認為你只需要使用帶有 parentId 的額外 API 調用。 因為它在 EntityReader 內部受到限制。 此外,可以實現您自己的 ApiRoute 並通過一個 API 調用獲取所有信息。
另請檢查您的子產品的響應。 由於產品的幾乎所有字段都是繼承的,所以您可能已經在第一次響應中得到了您需要的信息。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.