Jak najlepiej sprawdzić, czy niestandardowy atrybut istnieje w Magento2


9

Uważając, chcę sprawdzić, czy mój atrybut niestandardowy istnieje, zanim spróbuję go użyć w jakikolwiek sposób. Muszę sprawdzić wszystkie kolekcje atrybutów, a nie tylko kolekcję produktów. Mój atrybut może istnieć na kliencie, produkcie lub na niestandardowym modelu mojego własnego dzieła.

W Magento 1.x użyłbym:

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

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

Nie mogę znaleźć niczego, co wyraźnie robi coś takiego


Spróbuj tego, może ci pomóc webmull.com/…
Magento 2

Odpowiedzi:


9

W tym celu potrzebujesz \Magento\Eav\Api\AttributeRepositoryInterface::getmetody.

Na przykład:

try {

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

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

    //  attribute does not exist

}

Cześć Kandy, jak sprawdzić niestandardowy atrybut przypisany lub nie dla produktu?
Nagaraju K,
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.