Magento2: Bester Weg, um Kunden nach Kunden-ID zu laden

15

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).

Vishwas Bhatnagar
quelle

Antworten:

24

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);
Raphael beim digitalen Pianismus
quelle
funktioniert nicht ... ich habe es in helper / data.php behalten und diese Methode in der phtml-Datei aufgerufen, aber nicht funktioniert.
Sarfaraj Sipai