magento 2.2.5 «Тип ввода каталога для владельца магазина» отключен для атрибута, созданного через интерфейс атрибутов - PullRequest
0 голосов
/ 19 ноября 2018

Я успешно создал новый атрибут с помощью интерфейса Attribute, но когда я иду и проверяю свой атрибут в бэкэнде magento, раскрывающийся список «Тип ввода каталога для владельца магазина» становится серым. Если я создаю атрибут из бэкэнда, раскрывающийся список не отключается, поэтому пользователь может изменить тип в любое время.

Это код, который создает атрибут с отключенным выпадающим списком:

$attribute = $this->_attributeInterface; // \Magento\Eav\Api\Data\AttributeInterface
$attribute->setEntityTypeId(4);
$attribute->setIsUserDefined(1);
$attribute->setAttributeCode($newAttribute);
$attribute->setDefaultFrontendLabel(strtolower($newAttribute));
$attribute->setFrontendInput('text');
$attribute->setBackendType('varchar');
$attribute->setScope("global");
$attribute->setIsRequired(false);
$attribute->setIsUnique(false);
$attribute->setIsSearchable(false);
$attribute->setIsComparable(false);
$attribute->setIsVisibleOnFront(true);
$attribute->setIsFilterable(false);
$attribute->setUsedInProductListing(false);
$attribute->setIsVisible(true); // ?
// \Magento\Eav\Api\AttributeRepositoryInterface
$this->_attributeRepositoryInterface->save($attribute);

Код, который я использовал с magento 2.1, таков:

$newattribute = $eavsetup->addAttribute('catalog_product', $attributecode, [
        'type' => $type,
        'backend' => '',
        'frontend' => '',
        'label' => $label,
        'input' => $input,
        'class' => '',
        'source' => '', 
        'global' => $scope, 
        'visible' => true,
        'required' => false,
        'user_defined' => true, 
        'default' => '',
        'searchable' => false,
        'filterable' => false,
        'comparable' => false,
        'visible_on_front' => true,
        'used_in_product_listing' => false,
        'unique' => false,
        //'apply_to' => ''
    ]);

В этом коде для созданного атрибута отображается "Тип ввода каталога для владельца магазина", а не серый, поэтому предыдущая версия работает отлично. Мне нужно переключиться с предыдущей версии, которая вызывает модель напрямую, на новый код, который использует интерфейсы и репозиторий. Я не могу переключиться, пока выпадающее меню не будет отображаться правильно.

Кто-нибудь знает, как это решить?

...