Що найкращий спосіб перевірити, чи існує спеціальний атрибут у Magento2


9

Будучи обережними, я хочу перевірити, чи існує мій спеціальний атрибут, перш ніж я намагаюся його використовувати будь-яким способом. Мені потрібно перевірити всі колекції атрибутів, а не лише колекцію продуктів. Мій атрибут може існувати у замовника, товару чи на спеціальній моделі мого власного твору.

У magento 1.x я б використав наступне:

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

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

Я не можу знайти нічого, що явно робить щось подібне


Спробуйте це, можливо, вам допоможе webmull.com/…
Magento 2

Відповіді:


9

Для цього вам потрібен \Magento\Eav\Api\AttributeRepositoryInterface::getметод використання .

Наприклад:

try {

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

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

    //  attribute does not exist

}

Привіт, Канді, як перевірити призначений або не призначений для продукту атрибут?
Nagaraju K
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.