我使用XML-RPC(Magenta 1.x)接口将属性字典中的“color”和“size”传递给product-create API。出于实验的目的,只有一个属性类型,并且它正在被传递。属性有效,传递的值被定义为这些属性的有效选项。
即使正在创建产品,也会丢弃属性。我在代码中放置了一些调试语句,并且在模型上读取和分配属性没有问题,但save()忽略了它们。我想问的问题是属性是否应该直接存储在模型上作为标量,或者是否应该以不同方式传递它们。
有没有人知道修复此问题?我可以手动创建具有这些属性的产品而不会出现问题。
API调用的一般结构:
def create_simple_product(
self, attribute_set_id, sku, catalog_product_create_entity,
attributes={}):
cpce_dict = \
ma.utility.get_dict_from_named_tuple(
catalog_product_create_entity)
if attributes:
cpce_dict['additional_attributes'] = {
'single_data': attributes,
}
product_id = \
self.magento.catalog_product.create(
'simple',
attribute_set_id,
sku,
cpce_dict)