Что вызывает эту ошибку modx xpdo?

У меня есть специальное дополнение для modx revolution, но оно выдает ошибку:

[2014-06-28 15:06:21] (ERROR @ /index.php) Error 42S02 executing statement:
Array
(
    [0] => 42S02
    [1] => 1146
    [2] => Table 'db_name.modx_static_values' doesn't exist
)

Я пытаюсь добавить пакет, как это в конструкторе:

if (!$this->modx->addPackage('americansurcharge',MODX_CORE_PATH.'components/americansurcharge/model/','gsi_')) {

$this->modx->log(modX::LOG_LEVEL_ERROR,'Problem adding surcharge package. ');

}

Таблица "gsi_static_values" существует, и путь правильный [проверен] - более того, в моей схеме:

<?xml version="1.0" encoding="UTF-8"?>

<model package="AmericanSurcharge" baseClass="xPDOObject" tablePrefix="gsi_" platform="mysql" defaultEngine="MyISAM" version="1.1">

    <object class="StaticValues" table="static_values" extends="xPDOSimpleObject">
    ....some table columns ... 
    </object>


</model>

префикс таблицы 'gsi_' установлен явно.

Как я могу исправить эту ошибку?

1 ответ

Решение

Я заново сгенерировал схему с некоторыми небольшими изменениями и получил ошибку: Неизвестный столбец "StaticValues.0" в "списке полей".... не был уверен, почему это будет происходить, но я заметил, что схема не заключает в кавычки столбцы таблицы это были цифры, [у меня было несколько столбцов 301, 304, 401 и т. д.], как только я поставил перед ними префикс [grade_301, grade_304 и т. д.] и заново сгенерировал схему, все работало просто отлично.

Solution = 'Не использовать числовые значения для имен столбцов таблицы'

Другие вопросы по тегам