繁体   English   中英

扩展Shopware客户API以包括所有客户地址

[英]Extending Shopware customers API to include all customer's addresses

我是Shopware插件开发的新手,请如何调用与单个客户相关的所有地址?

Shopware v5.4。*

您可以使用AddressRepository查找客户的所有地址:

// or you can inject the session and models services
$userId = $this->container->get('session')->get('sUserId');
$addressRepository = $this->container->get('models')->getRepository(Shopware\Models\Customer\Address::class);

$addresses = $addressRepository->findBy(['customer' => $userId]);

$adresses将是一个Address对象数组。

经过PawełNapierała的一些研究和启发,我找到了我要寻找的东西,这是最终结果:

public function getOne($id)
{
    $result = parent::getOne($id);
    $addresses = $this->getManager()
            ->getRepository(\Shopware\Models\Customer\Address::class)
            ->findBy(['customer'=>$id]);
    $resultArray = $this->getManager()->toArray($addresses);
    $result ['addresses'] = $resultArray;
    return $result;
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM