Как мне создать YML-фикстуры Symfony на основе существующих данных базы данных?
Вопрос
Мне было интересно, знает ли кто-нибудь, как сгенерировать файл fixment.yml из данных, которые уже существуют в базе данных?
Поскольку вы можете использовать схему сборки для создания схемы, есть ли способ сделать это для данных?
symfony propel:build-schema
Решение
В Symfony 1.0 используйте команду:
$ php symfony propel-dump-data <APPLICATION_NAME> <FIXTURES_DIR_OR_FILE> [<ENVIRONMENT_NAME>]
В версиях 1.1 и 1.2 используйте следующую команду:
$ php symfony propel:data-dump <APPLICATION_NAME> [<TARGET>] [--env=<ENVIRONMENT_NAME>]
Другие советы
В Symfony 1.4 вам просто нужно написать:
./symfony doctrine:data-dump
и вы получите файл data/fixtures/data.yml
:-)
Я нашел решение в письме архив. Пользователь использует
symfony propel:data-dump > fixture.yml
Мне просто нужно было сделать это в соответствии с Symfony 1.2 и Doctrine.
доктрина Symfony: дамп данных
Это выдает всю базу данных в data / fixtures / data.yml. Я загрузил некоторые данные в базу данных с помощью файла .sql и хотел, чтобы это было исправлением для моей действующей базы данных. Я просто отредактировал файл data.yml до нужной мне таблицы базы данных.
Альтернативой было написать код для чтения таблицы базы данных и вывести ее в формате YAML.