Id द्वारा ग्राहक को लोड करने का सबसे अच्छा तरीका क्या है? ग्राहक इंटरफ़ेस या ग्राहक कारखाने या किसी अन्य तरीके का उपयोग करना?
अधिकांश समाधानों में मैंने पाया, यह सीधे उपयोग करके किया जाता है objectManager
(जिसका उपयोग कभी नहीं किया जाना चाहिए)।
Id द्वारा ग्राहक को लोड करने का सबसे अच्छा तरीका क्या है? ग्राहक इंटरफ़ेस या ग्राहक कारखाने या किसी अन्य तरीके का उपयोग करना?
अधिकांश समाधानों में मैंने पाया, यह सीधे उपयोग करके किया जाता है objectManager
(जिसका उपयोग कभी नहीं किया जाना चाहिए)।
जवाबों:
सेवा अनुबंधों का उपयोग करने के लिए हमेशा एक बेहतर अभ्यास है।
आपके मामले में मैं उपयोग करूंगा \Magento\Customer\Api\CustomerRepositoryInterface
:
protected $_customerRepositoryInterface;
public function __construct(
....
\Magento\Customer\Api\CustomerRepositoryInterface $customerRepositoryInterface,
....
) {
....
$this->_customerRepositoryInterface = $customerRepositoryInterface;
}
तब आपके कोड में आप कॉल कर सकते हैं:
$customerId = 1;
$customer = $this->_customerRepositoryInterface->getById($customerId);