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

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

funktioniert nicht ... ich habe es in helper / data.php behalten und diese Methode in der phtml-Datei aufgerufen, aber nicht funktioniert.
Sarfaraj Sipai
Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.