Я пытаюсь выяснить, почему я получаю эту ошибку, когда мой модуль Magento пытается установить себя:
SQLSTATE[23000]: Integrity constraint violation: 1062 Duplicate entry 'export_sent' for key 'PRIMARY'
Я думаю, что модуль пытается установить себя несколько раз по какой-то причине, поскольку каждый раз, когда он запускается, значение добавляется в таблицу sales_order_status. Первая инструкция выполняется, а затем кажется, что код продолжает повторяться. Не уверен что происходит. Любая помощь более чем ценится! Кстати, я удалил значение export_sent из таблицы перед запуском этой установки.
Мой модуль config.xml:
<config>
<modules>
<Millena_Export>
<version>0.1.0</version>
</Millena_Export>
</modules>
<global>
<models>
<millena_export>
<class>Millena_Export_Model</class>
</millena_export>
</models>
<helpers>
<export>
<class>Millena_Export_Helper</class>
</export>
</helpers>
<resources>
<export_setup>
<setup>
<module>Millena_Export</module>
</setup>
<connection>
<use>core_setup</use>
</connection>
</export_setup>
<export_write>
<connection>
<use>core_write</use>
</connection>
</export_write>
<export_read>
<connection>
<use>core_read</use>
</connection>
</export_read>
</resources>
</global>
<crontab>
<jobs>
<millena_export_send_all>
<schedule><cron_expr>* * * * *</cron_expr></schedule>
<run><model>millena_export/observer::exportOrderData</model></run>
</millena_export_send_all>
</jobs>
</crontab>
</config>
и мой sql / export_setup / mysql4-install-0.1.0.php:
$installer = $this;
$installer->startSetup();
$installer->run("
INSERT INTO `{$this->getTable('sales/order_status')}` (
`status` ,
`label`
) VALUES (
'export_sent', 'Exported to Mainframe'
);
INSERT INTO `{$this->getTable('sales/order_status_state')}' (
`status` ,
`state` ,
`is_default`
) VALUES (
'export_sent', 'processing', '0'
);
INSERT INTO `{$this->getTable('sales/order_status')}` (
`status` ,
`label`
) VALUES (
'export_acknowledged', 'Acknowledged by Mainframe'
);
INSERT INTO `{$this->getTable('sales/order_status_state')}' (
`status` ,
`state` ,
`is_default`
) VALUES (
'export_acknowledged', 'processing', '0'
);
");
$installer->endSetup();