Атрибут продукта Пользовательский атрибут Multiselect не может сохранять значения
-
13-12-2019 - |
Вопрос
Я создал продукт пользовательский атрибут называемый пакет, который является многосексуальным.
$this->addAttribute(
'catalog_product',
'packages',
array(
'group' => 'Package',
'backend' => '',
'frontend' => '',
'class' => '',
'default' => '',
'label' => 'Packages',
'input' => 'multiselect',
'type' => 'text',
'source' => 'npm_recurrex/package_source',
'global' => Mage_Catalog_Model_Resource_Eav_Attribute::SCOPE_GLOBAL,
'is_visible' => 1,
'required' => 0,
'searchable' => 0,
'filterable' => 0,
'unique' => 0,
'comparable' => 0,
'visible_on_front' => 1,
'user_defined' => 1,
)
);
.
и параметры этого поля получают от пользовательского модуля, называемого пакетом, где я создаю / редактирующую объект пакета.
Все в порядке, но только проблема Когда я сохраняю продукт с пользовательским атрибутом, я выбираю несколько вариантов, я имею в виду, я выбираю Package1 и Package2 и сохранить продукт. Продукт сохранен успешно, но это не сохраняет мои пользовательские выбранные значения атрибута, пользовательский атрибут [Multi Select] не хранится в базе данных.
Может кто-нибудь предложить, что не так с этим, где я не очень хорош в этом процессе?
Спасибо за ценные ответы
Решение
Вы должны убедиться, что Magento изменяет ваши значения на что-то, что можно записать в базу данных, массив не может.
Так что вам нужно добавить модель Backend:
'backend' => 'eav/entity_attribute_backend_array',
.