diff options
Diffstat (limited to 'docs')
| -rw-r--r-- | docs/howto/delete-app.txt | 29 | ||||
| -rw-r--r-- | docs/howto/index.txt | 1 |
2 files changed, 30 insertions, 0 deletions
diff --git a/docs/howto/delete-app.txt b/docs/howto/delete-app.txt new file mode 100644 index 0000000000..e1dac4f179 --- /dev/null +++ b/docs/howto/delete-app.txt @@ -0,0 +1,29 @@ +================================== +How to delete a Django application +================================== + +Django provides the ability to group sets of features into Python packages +called :doc:`applications</ref/applications/>`. When requirements change, apps +may become obsolete or unnecessary. The following steps will help you delete an +application safely. + +#. Remove all references to the app (imports, foreign keys etc.). + +#. Remove all models from the corresponding ``models.py`` file. + +#. Create relevant migrations by running :djadmin:`makemigrations`. This step + generates a migration that deletes tables for the removed models, and any + other required migration for updating relationships connected to those + models. + +#. :ref:`Squash <migration-squashing>` out references to the app in other apps' + migrations. + +#. Apply migrations locally, runs tests, and verify the correctness of your + project. + +#. Deploy/release your updated Django project. + +#. Remove the app from :setting:`INSTALLED_APPS`. + +#. Finally, remove the app's directory. diff --git a/docs/howto/index.txt b/docs/howto/index.txt index 05a0203132..0034032ce2 100644 --- a/docs/howto/index.txt +++ b/docs/howto/index.txt @@ -31,6 +31,7 @@ you quickly accomplish common tasks. static-files/deployment windows writing-migrations + delete-app .. seealso:: |
