Django アプリを完全にアンインストールするにはどうすればいいですか? 質問する

Django アプリを完全にアンインストールするにはどうすればいいですか? 質問する

データベースの削除を含めて Django アプリを完全にアンインストールする手順は何ですか?

ベストアンサー1

  1. Django < 1.7には、アプリのすべてのテーブルを削除するのに必要なSQLを提供する便利な管理コマンドがあります。sqlclear ドキュメント詳細については、以下を参照してください。基本的に、を実行すると、./manage.py sqlclear my_app_nameDB内のアプリの痕跡をすべて取り除くために実行する必要があるSQL文が取得されます。これらの文をコピーしてSQLクライアントに貼り付ける(またはパイプする)必要があります。Django 1.7以降では、./manage.py migrate my_app_name zero移住する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 # print(f"deleting {c}") # for Python 3.6+
        c.delete()

おすすめ記事