eav_entity_type без цитаты при установке

Происхождение…

У меня есть модуль со сценарием установки (общий mysql4-upgrade-0.1.0-0.1.1.php), добавляющий атрибут для цитаты:

$eav = new Mage_Eav_Model_Entity_Setup('sales_setup'); $eav->addAttribute('quote', 'my_attribute', array('type' => 'varchar')); 

Если я запустил хранилище magento на пустой БД, запускает скрипты сценариев, а ошибка «Неверный идентификатор объекта» прерывает процесс. Стек стека вызовов указывает на мой сценарий установки.

…находясь в поиске…

Если я иду в базу данных, я вижу таблицу eav_entity_type заполненную, но только с 8 типами: тип цитаты не зарегистрирован!

Вот почему Mage_Eav_Model_Entity_Setup-> getEntityTypeId () выдает исключение.

Вопрос:

Я не знаю, почему объект сущности не создается с другими объектами. Как я могу заставить magento регистрировать объект котировки до установки моего модуля? Есть ли альтернатива?

Существует, возможно, связанный с этим вопрос

Solutions Collecting From Web of "eav_entity_type без цитаты при установке"

Начиная с 1.4.x все объекты были перемещены в плоскую структуру. Однако по-прежнему можно использовать интерфейс псевдо EAV класса Mage_Sales_Model_Mysql4_Setup. Ваш код не работает, потому что вы используете Eav setup model вместо Sales one.

Кроме того, по умолчанию все скрипты настройки модуля в приложении / code / local / обрабатываются только после сценариев в приложении / коде / ядре, поэтому вы можете не указывать зависимость от основного модуля.

С уважением, Иван