データベースの削除を含めて Django アプリを完全にアンインストールする手順は何ですか?
ベストアンサー1
Django < 1.7には、アプリのすべてのテーブルを削除するのに必要なSQLを提供する便利な管理コマンドがあります。sqlclear ドキュメント詳細については、以下を参照してください。基本的に、を実行すると、
./manage.py sqlclear my_app_name
DB内のアプリの痕跡をすべて取り除くために実行する必要があるSQL文が取得されます。これらの文をコピーしてSQLクライアントに貼り付ける(またはパイプする)必要があります。Django 1.7以降では、./manage.py migrate my_app_name zero
(移住するdocs) により、データベースのクリーニングが自動的に実行されます。INSTALLED_APPS
プロジェクトからアプリを削除するには、プロジェクトのからアプリを削除するだけですsettings.py
。Django はアプリをロードしなくなります。アプリのファイルを残しておく必要がなくなった場合は、プロジェクト ディレクトリまたはアプリが存在する PYTHONPATH 上の他の場所からアプリ ディレクトリを削除します。
(オプション) アプリがメディア ファイル、キャッシュ ファイル、またはその他の一時ファイルをどこかに保存している場合は、それらも削除することをお勧めします。また、アプリから残っている可能性のあるセッション データにも注意してください。
(オプション) 古くなったコンテンツ タイプも削除します。
そのようです。
from django.contrib.contenttypes.models import ContentType
for c in ContentType.objects.all():
if not c.model_class():
print "deleting %s"%c # print(f"deleting {c}") # for Python 3.6+
c.delete()