2011-02-02 2 views
2

Мне просто интересно, если есть способ, чтобы выполнить следующую команду, но не удалить все записи:Symfony строить все, но не удалять записи

php symfony doctrine:build --all 

Причина Я спрашиваю потому что проект symfony будет использовать существующую базу данных, в которой уже есть много записей. Использование этой команды полностью очистит и заново создаст таблицы, за вычетом данных.

Любые идеи?

ответ

5

Вы можете вызвать отдельные сборки команды, которые вам нужно один за другим, вместо того чтобы использовать построить --all

Построить --all эквивалентно, выполнив следующие задачи:

./symfony doctrine:drop-db 
./symfony doctrine:build-db 
./symfony doctrine:build-model 
./symfony doctrine:build-forms 
./symfony doctrine:build-filters 
./symfony doctrine:build-sql 
./symfony doctrine:insert-sql 

Очевидно, вы не хотите запускать первые два. Если вам не нравится выполнять все эти команды вручную, вы можете создать пакетный скрипт для выполнения того, что вам нужно.

Если вы внесли изменения в свою схему, вам нужно будет создать классы миграции для генерации различий. Посмотрите на следующее, если вам нужно сделать это: Migration Task

+0

Спасибо за это! – xil3

+0

Если вы меняете базу данных вне файлов конфигурации через phpmyadmin или другой прямой метод, обязательно переконфигурируйте свою схему перед моделью. ./symfony doctrine: build-schema – Jestep

Смежные вопросы