Как сгенерировать SQL из YML фикстеров в Symfony 1.0? - PullRequest
1 голос
/ 11 марта 2009

Я пытаюсь создать скрипт для автоматизации процесса обновления для проектов Symfony. Например. применять любые исправления из одной ревизии к другой, включая любые возможные обновления модели и новые фикстуры, без повторной загрузки всей базы данных.

Я завершил большую часть этого, но мне не удалось найти способ сгенерировать файл SQL, содержащий операторы INSERT, которые выполняются данными загрузки propel, когда он вставляет фиксатор.

Я знаю, что могу получить базу данных для получения информации, но это не главное, и в моем случае это не сработает, потому что мне нужен пустой БД, в котором нет других данных.

Итак, короче говоря, мой вопрос: есть ли способ взять фиксатор YML и сгенерировать необходимые вставки SQL?

Я знаю, что это можно сделать, обработав yml и собрав логику, но процесс сборки делает это где-то, и нет причин писать это снова ..

Любая помощь будет высоко ценится.

1 Ответ

0 голосов
/ 16 марта 2009

Возможно, я не правильно понял ваш вопрос, но не мог бы вы просто вызвать задачу, которая загружает данные в базу данных, или альтернативно написать код, который вызывает sfPropelData :: loadData () (я предполагаю, что Propel здесь).

$loader = new sfPropelData();
$loader->loadData(sfConfig::get('sf_data_dir').'/fixtures');

Даже sfPropelData и его родительские sfData не генерируют sql-код при загрузке приборов, а делают это с помощью ORM (как можно увидеть в sfPropelData :: loadDataFromArray () .

Если вы объяснили свою проблему подробнее и почему этого решения недостаточно, я могу помочь.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...