Если я правильно угадываю, вы используете базу данных MySQL.Если да, то вы столкнулись с ошибкой / проблемой в текущей версии библиотеки doctrine-fixtures
для Doctrine2.Проблема в том, что они используют команду TRUNCATE
для очистки текущих значений базы данных, но у этой команды есть проблема удаления внешних связей в MySQL.
См. эту проблему и эту в репозитории библиотеки GitHub для получения дополнительной информации и обходных путей.
В моем конкретном случае я запускаю эту команду из скрипта, поэтому, чтобы заставить ее работать правильно, я делаю:
php app/console doctrine:database:drop --force
php app/console doctrine:database:create
php app/console doctrine:schema:update --force
php app/console doctrine:fixtures:load --append
Таким образом, очистка выполняется командой drop
, и добавление имеет тот же эффект, что и не добавление, поскольку база данных пуста при загрузке приборов.
Должен признать, я неНе знаю, почему у вашего босса нет этой проблемы, возможно, в его базе данных нет книги, связанной с автором.
Надеюсь, эта помощь поможет.
С уважением,
Мэтт