Я пытаюсь установить пользовательскую модель бэкенда для пользовательского атрибута. Проблема в том, что Magento добавляет каталог «Mage» к пути, поэтому я не могу сохранить все файлы в моем каталоге расширений.
Код:
$setup = new Mage_Eav_Model_Entity_Setup('core_setup');
$setup->addAttribute('catalog_category', $postData['attribute_code'], array(
'label' => $postData['frontend_label'],
'input' => $postData['frontend_input'],
'backend' => 'my_company/myextension_model_category_attribute_backend_file',
'required' => $postData['is_required'],
'global' => Mage_Catalog_Model_Resource_Eav_Attribute::SCOPE_STORE,
'group' => $postData['attribute_group_name'],
'sort_order' => $postData['sort_order']
));
Вместо пути, относящегося к моему расширению, добавляется 'Mage', что приводит к этой ошибке:
Warning: include(Mage/My_Company/Model/My_Extension/Model/Category/Attribute/Backend/File.php): failed to open stream
Я не нашел решения, которое работает с методом addAttribute ().
При устранении неполадок не сразу было понятно, где Magento предшествует пути.
Все отображается нормально (я использую файловый рендерер), но, конечно, без бэкэнда сохраняется правильно.
Я нахожусь на Magento 1.6.1.