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