Magento2: il modo migliore per caricare l'ID cliente per cliente


15

Qual è il modo migliore per caricare il cliente per ID? utilizzando l'interfaccia cliente o la fabbrica del cliente o in un altro modo?
Nella maggior parte delle soluzioni che ho trovato, lo si fa usando direttamente objectManager(che non dovrebbe mai essere usato).

Risposte:


24

È sempre una pratica migliore utilizzare i contratti di assistenza.

Nel tuo caso vorrei usare \Magento\Customer\Api\CustomerRepositoryInterface:

protected $_customerRepositoryInterface;
public function __construct(
    ....
    \Magento\Customer\Api\CustomerRepositoryInterface $customerRepositoryInterface,
    ....
) {
    ....
    $this->_customerRepositoryInterface = $customerRepositoryInterface;
}

Quindi nel tuo codice puoi chiamare:

$customerId = 1;
$customer = $this->_customerRepositoryInterface->getById($customerId);

non funziona ... l'ho tenuto in helper / data.php e ho chiamato questo metodo nel file phtml ma non funziona.
Sarfaraj Sipai,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.