Magento2에 사용자 지정 특성이 있는지 확인하는 가장 좋은 방법


9

조심스럽게, 사용자 정의 속성이 어떤 식 으로든 사용하기 전에 사용자 정의 속성이 존재하는지 확인하고 싶습니다. 제품 컬렉션뿐만 아니라 모든 속성 컬렉션을 확인해야합니다. 내 속성은 고객, 제품 또는 자신이 만든 사용자 지정 모델에 존재할 수 있습니다.

magento 1.x에서는 다음을 사용합니다.

$attr = Mage::getResourceModel('eav/entity_attribute_collection')->setCodeFilter('specialty')->getFirstItem();

if ($attr->getAttributeId() > 0) {
 Do some stuff....'

이와 같은 것을 명시 적으로 수행하는 것을 찾을 수 없습니다.


답변:


9

이를 위해서는 사용 \Magento\Eav\Api\AttributeRepositoryInterface::get방법이 필요합니다 .

예를 들면 다음과 같습니다.

try {

   $attribute = $this->attributeRepository->get($entityType, $attributeCode);

} catch (\Magento\Framework\Exception\NoSuchEntityException $e) {

    //  attribute does not exist

}

안녕하세요 캔디, 제품에 할당 된 사용자 지정 특성을 확인하는 방법은 무엇입니까?
나가라 주 K
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.