我需要编写一个Shopware插件,用external_id
字段扩展客户模型。此字段应通过管理UI和API进行编辑。
我发现,我可以像这样向用户添加属性:
public function addAttributes() {
$this->Application()->Models()->addAttribute(
's_user_attributes',
'bla',
'externalId',
'INT(11)',
true,
null
);
$this->Application()->Models()->generateAttributeModels(array(
's_user_attributes'
));
}
如何在UI和API中显示此字段?
PS:Shopware 5
答案 0 :(得分:3)
addAttribute
。
请改用shopware_attribute.crud_service
- 容器中的Shopware()
。
$service = Shopware()->Container()->get('shopware_attribute.crud_service');
$service->update('s_user_attributes', 'bla', 'integer', [
'label' => '',
'supportText' => '',
'helpText' => '',
'translatable' => false,
'displayInBackend' => true,
'position' => 1
]);
Shopware()->Models()->generateAttributeModels(
array(
's_user_attributes'
)
);
如果您将displayInBackend
设置为true
,则可以在用户所在的后端进行编辑。
答案 1 :(得分:1)