Magento2: ग्राहक आईडी द्वारा ग्राहक को लोड करने का सबसे अच्छा तरीका


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

काम नहीं कर रहा है ... मैं इसे सहायक / data.php में रखता हूं और इस विधि को phtml फ़ाइल में कॉल करता हूं, लेकिन काम नहीं कर रहा।
सरफराज सिपाई
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.