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 2018
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.