在Commercetools创建产品时遇slug分类查找失败问题求助
Commercetools创建产品时Slug分类匹配异常问题
问题说明
在Commercetools中使用以下数据创建新产品时,触发Slug异常,系统提示:Cannot find category for slug:xxxxxx in commercetools(中文释义:找不到对应slug的分类)。
分类数据
key,externalId,name.de,slug.de,name.en,slug.en,name.it,slug.it,parentId,orderHint,webImageUrl,iosImageUrl c5,5,Collection,collection,Collection,collection,Collection,collection,,0.0005,, c551,551,The Home of Golf,collection-The-Home-of-Golf,The Home of Golf,collection-The-Home-of-Golf,The Home of Golf,collection-The-Home-of-Golf,5,0.000188,,
产品数据
productType,variantId,sku ,prices ,tax ,categories ,images ,name.en ,description.en,slug.en ,metaTitle.en,metaDescription.en,metaKeywords.en,name.de ,description.de,slug.de ,metaTitle.de,metaDescription.de,metaKeywords.de,name.it,description.it,slug.it,metaTitle.it,metaDescription.it,metaKeywords.it,creationDate,articleNumberManufacturer,articleNumberMax,matrixId ,baseId,designer ,madeInItaly,completeTheLook,commonSize,size,color,colorFreeDefinition.en,details.en,colorFreeDefinition.de,details.de,colorFreeDefinition.it,details.it,style ,gender,season,isOnStock,isLook,lookProducts,seasonNew,variantKey main,1,M0E20000000EEUD,EUR 16875;EUR 11066 b2b;US-USD 16875;USD 11066 b2b;DE-EUR 13500;IT-EUR 13500;GB-EUR 13500;DE-EUR 13095#sunrise-store-berlin;EUR 17719#sunrise-store-vienna;DE-EUR 14445#sunrise-store-munich;DE-EUR 12960#sunrise-store-cologne;DE-EUR 12825#sunrise-store-hamburg;US-USD 13095#sunrise-store-boston-2;USD 17719#sunrise-store-chicago;US-USD 14445#sunrise-store-boston-1;US-USD 12960#sunrise-store-sanfrancisco;US-USD 12825#sunrise-store-newyork,standard,Collection>The Home of Golf,https://s3-eu-west-1.amazonaws.com/commercetools-maximilian/products/081403_1_medium.jpg,T-Shirt Majestic Filatures silver,,majestic-filatures-tshirt-E150904-silver,,,,T-Shirt Majestic Filatures silber,,majestic-filatures-tshirt-E150904-silber,,,,,,,,,,,E15 09 04 644,81403,M0E20000000EEUD,81403,majesticfilatures,no,,xs,0,silver,silver,,silber,,,,sporty,women,s15,,,,,M0E20000000EEUD ,2,M0E20000000EEUE,EUR 16875;EUR 11066 b2b;US-USD 16875;USD 11066 b2b;DE-EUR 13500;IT-EUR 13500;GB-EUR 13500;DE-EUR 13230#sunrise-store-berlin;EUR 15356#sunrise-store-vienna;DE-EUR 13230#sunrise-store-munich;DE-EUR 13905#sunrise-store-cologne;DE-EUR 14445#sunrise-store-hamburg;US-USD 13230#sunrise-store-boston-2;USD 15356#sunrise-store-chicago;US-USD 13230#sunrise-store-boston-1;US-USD 13905#sunrise-store-sanfrancisco;US-USD 14445#sunrise-store-newyork,,,https://s3-eu-west-1.amazonaws.com/commercetools-maximilian/products/081403_1_medium.jpg,,,,,,,,,,,,,,,,,,,,E15 09 04 644,81403,M0E20000000EEUE,81403,majesticfilatures,no,,s,1,silver,silver,,silber,,,,sporty,women,s15,,,,,M0E20000000EEUE
错误日志
{ "stack": "Error: collection-the-home-of-golf\n at /mnt/c/commercetools-data/dist/lib/products.js:74:11\n at Array.map ()\n at withCategories (/mnt/c/commercetools-data/dist/lib/products.js:70:77)\n at /mnt/c/commercetools-data/dist/lib/products.js:241:17\n at Array.map ()\n at /mnt/c/commercetools-data/dist/lib/products.js:273:44\n at processTicksAndRejections (node:internal/process/task_queues:96:5)" }
排查与解决办法
- 检查Slug大小写一致性:分类数据中
slug.en为collection-The-Home-of-Golf(混合大小写),但错误日志中查找的是全小写的collection-the-home-of-golf。Commercetools的Slug匹配默认区分大小写,需确保产品关联的分类slug与系统中已存在的分类slug完全一致。 - 确认分类已创建:核实key为c551的分类(对应slug
collection-The-Home-of-Golf)是否已成功导入到Commercetools系统。若分类未提前创建,产品关联时必然找不到对应slug。 - 修正代码逻辑:查看
products.js中withCategories函数(第70行附近),检查是否存在自动将slug转为小写的逻辑,导致与系统存储的混合大小写slug不匹配。调整代码,保持slug的大小写与系统分类一致。
内容的提问来源于stack exchange,提问作者Mani Sankar
相关产品推荐
相关产品推荐

