Как настроить Django для повторной инициализации и заполнения всей базы данных при запуске? - PullRequest
1 голос
/ 19 марта 2011

Предположим, что вы работаете с первой версией нового приложения Django и продолжаете добавлять изменения моделей.

Будучи приложением, управляемым данными, вы в основном работаете над настройкой администратора django.

В этом случае syncdb не слишком полезен, потому что он не сможет обновить модели.South было интересно, но это не имеет особого смысла, когда вы работаете с первой версией.

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

Как вы предлагаете настроить среду разработки таким образом, чтобы вы могли:

  • автоматический перезапуск сервера django при изменении файлов
  • автоматическая переинициализация базы данных при перезапуске django

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

1 Ответ

4 голосов
/ 19 марта 2011

Предоставление исходных данных для моделей

Иногда полезно предварительно заполнить базу данных жестко закодированными данными при первой настройке приложения.Django может автоматически создавать эти данные несколькими способами: вы можете предоставить исходные данные с помощью осветителей или же вы можете предоставить исходные данные в виде SQL.

В общем, использование осветителя - более чистый метод, поскольку его база данных-агностика, но исходный SQL также немного более гибок.

http://docs.djangoproject.com/en/dev/howto/initial-data/

...