如何使用REST API更新/添加客户的EAV属性?
我尝试使用[PUT] /V1/customers/{id}
使用此网址
http://<website>/rest/V1/customers/1
这是身体数据:
$data = array(
'customer' => array(
'id' => 1,
'email' => 'email@domain.com',
'firstname' => 'John',
'lastname' => 'Doe',
'website_id' => 1,
'custom_attributes' => array(
'attribute_code' => 'my_custom_attribute_code',
'value' => 'my_custom_attribute_value'
)
)
);
我能够编辑客户的默认属性,例如firstname
和lastname
,但我无法编辑EAV属性。
是否可以使用默认的customerCustomerRepositoryV1
界面执行此操作?
如果没有,您如何扩展以便可以编辑/添加客户的EAV属性?
谢谢。
Magento 2.1 Rest API接口: http://devdocs.magento.com/swagger
答案 0 :(得分:0)
身体数据有误。我忘了把索引放在custom_attributes
数组上。
应该是这样的:
$data = array(
'customer' => array(
'id' => 1,
'email' => 'email@domain.com',
'firstname' => 'John',
'lastname' => 'Doe',
'website_id' => 1,
'custom_attributes' => array(
'0' => array(
'attribute_code' => 'my_custom_attribute_code',
'value' => 'my_custom_attribute_value'
)
)
)
);