Django:как полностью удалить приложение Django?



какова процедура полного удаления приложения Django, в комплекте с удалением базы данных?

1595   4  

4 ответов:

  1. Django sqlclear docs для получения дополнительной информации. В принципе, работает ./manage.py sqlclear my_app_name получает вас сделать в SQL, которые должны быть выполнены, чтобы избавиться от всех следов приложения в вашей БД. Вам все равно нужно скопировать и вставить (или передать) эти операторы в ваш клиент SQL. Для Django 1.7 и выше, использовать ./manage.py migrate my_app_name zero (см. migrate docs), который запускает очистку базы данных автоматически.

  2. чтобы удалить приложение из вашего проекта, все, что вам нужно сделать, это удалить его из INSTALLED_APPS в вашем проекте settings.py. Django больше не будет загружать приложение.

  3. если вы больше не хотите, чтобы файлы приложения висели вокруг, удалите каталог приложения из каталога проекта или другого места на вашем PYTHONPATH, где он находится.

  4. (необязательно) если приложение хранит носитель файлы, файлы кэша или другие временные файлы где-то, вы можете удалить их, а также. Также будьте осторожны с затяжными данными сеанса, которые могут остаться от приложения.

  5. (необязательно) я бы также удалил все устаревшие типы контента.

вот так.

from django.contrib.contenttypes.models import ContentType
for c in ContentType.objects.all():
    if not c.model_class():
        print "deleting %s"%c
        c.delete()
  1. прокомментируйте settings.py на INSTALLED_APPS ненужная строка приложения
  2. удалить все папке __pycache__ и migrate в проекте
  3. удалить ненужную модель в models.py
  4. удалить импорт ссылке views.py,admin.py конец etc.
  5. удалить все ссылки в urls.py на вашем ненужном приложении
  6. в базе данных удалить ненужные таблицы, которые связаны с приложением (я делаю это с помощью программы помощи "Студия Валентина")
  7. удалить приложения папку
  8. в командной строке сделать это: python manage.py migrate и python manage.py syncdb

приложение django - это "набор" файлов *.py и каталог с именем django-app. Таким образом, вы можете просто удалить всю папку со всеми файлами *.py

для "удаления" таблиц из БД необходимо использовать DELETE FROM <app-name_table-names>

кроме того, вы должны удалить строки с именем приложения из setting.py в корневом каталоге

Я действительно люблю шаги от в этой статье - это миграция поддержка.

возможно, его нужно адаптировать в двух обновлениях кода , но он выглядит действительно безопасным, когда вам приходится работать со многими развертываниями (например: этап тестирования, бета - версия и производство-в моем случае)

Comments

    Ничего не найдено.