將nachouve的答案擴展爲適當的django遷移,您可以使用RunSQL
遷移所有DROP statements
,請參閱django遷移文檔。
您可以把這個在你的應用程序要刪除或者在不同的應用程序(如果你已經刪除的應用程序或它的安裝,所以你不能編輯它)。
from django.db import migrations
DROP_ACCOUNT_TABLES = """\
DROP TABLE IF EXISTS account_account CASCADE;
DROP TABLE IF EXISTS account_accountdeletion CASCADE;
DROP TABLE IF EXISTS account_emailaddress CASCADE;
DROP TABLE IF EXISTS account_emailconfirmation CASCADE;
DROP TABLE IF EXISTS account_signupcode CASCADE;
DROP TABLE IF EXISTS account_signupcoderesult CASCADE;
"""
class Migration(migrations.Migration):
dependencies = [
('auth', '<< previous migations >>'),
]
operations = [
migrations.RunSQL(DROP_ACCOUNT_TABLES)
]
爲什麼不先刪除所有的應用程序的遷移,然後刪除應用程序? – JuniorCompressor 2015-02-08 14:26:58
我改變了這個問題,我解釋自己錯了,我希望現在它更清楚! – diegopau 2015-02-08 14:34:53
你有沒有想出一個解決方案?也遇到了麻煩。 – 2015-06-03 04:57:07