Magento2:顧客IDごとに顧客をロードする最適な方法


15

Idで顧客を読み込む最良の方法は何ですか?顧客インターフェースまたは顧客工場または別の方法を使用していますか?
私が見つけたほとんどのソリューションでは、直接使用することで行われますobjectManager(決して使用しないでください)。

回答:


24

サービスコントラクトを使用することは常により良い方法です。

あなたの場合、私は使用します\Magento\Customer\Api\CustomerRepositoryInterface

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

次に、あなたのコードで呼び出すことができます:

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

動作していません... helper / data.phpに保持し、phtmlファイルでこのメソッドを呼び出していますが、動作していません。
Sarfaraj Sipai
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.