请注意系统版本 !

Django 移除 App

  1. 清理 model,删除相关数据库表
  • Django < 1.7 有一个便捷的终端命令:sqlclear,参考 sqlclear docs
./manage.py sqlclear my_app_name
    ./manage.py migrate my_app_name zero 
  1. INSTALLED_APPS 中移除 app 模块
# Application definition

INSTALLED_APPS = [
    'blog.apps.BlogConfig',
    'django.contrib.admin',
    'django.contrib.auth',
    'django.contrib.contenttypes',
    'django.contrib.sessions',
    'django.contrib.messages',
    'django.contrib.staticfiles',
    'rest_framework',
    'deleted_app', # 直接移除
]
  1. 清除相关 url

  2. 删除相关的 contentTypes

  • 在 shell 中删除
python manage.py shell
>>> from django.contrib.contenttypes.models import ContentType
>>> ContentType.objects.filter(app_label='customers').delete()
  • 脚本删除
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. 删除本地 app 目录,多媒体文件,临时缓存等

参考链接:

  1. Removing a Django App
  2. Django: How to completely uninstall a Django app?
Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐