Was ist der beste Weg, um Kunden nach ID zu laden? über Kundenschnittstelle oder Kundenfabrik oder auf andere Weise?
In den meisten Lösungen, die ich gefunden habe, erfolgt dies direkt mit objectManager
(was niemals verwendet werden sollte).
Was ist der beste Weg, um Kunden nach ID zu laden? über Kundenschnittstelle oder Kundenfabrik oder auf andere Weise?
In den meisten Lösungen, die ich gefunden habe, erfolgt dies direkt mit objectManager
(was niemals verwendet werden sollte).
Antworten:
Es ist immer besser, Serviceverträge zu verwenden.
In Ihrem Fall würde ich verwenden \Magento\Customer\Api\CustomerRepositoryInterface
:
protected $_customerRepositoryInterface;
public function __construct(
....
\Magento\Customer\Api\CustomerRepositoryInterface $customerRepositoryInterface,
....
) {
....
$this->_customerRepositoryInterface = $customerRepositoryInterface;
}
Dann können Sie in Ihrem Code anrufen:
$customerId = 1;
$customer = $this->_customerRepositoryInterface->getById($customerId);