From fcfda644d3a05c365217bff9f12a16bb343a57d5 Mon Sep 17 00:00:00 2001 From: Philip Sargent Date: Sun, 7 Jun 2020 16:16:35 +0100 Subject: Fix un-cleared db error (partial) --- reset-django.py | 74 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 74 insertions(+) create mode 100644 reset-django.py (limited to 'reset-django.py') diff --git a/reset-django.py b/reset-django.py new file mode 100644 index 0000000..8b8f9b6 --- /dev/null +++ b/reset-django.py @@ -0,0 +1,74 @@ +import os +import shutil + +from pprint import pprint + +# from https://groups.google.com/forum/#!topic/django-users/C8Q7CTpcChc +# Just put it in the folder where manage.py file is and run it. + +folders = [] +base_dir = os.path.dirname(os.path.realpath(__file__)) + + +def get_directory_list(): + global folders + global base_dir + + for root, d_names, f_names in os.walk(base_dir): + for name in d_names: + folders.append(os.path.join(root, name)) + folders = sorted(folders) + + return folders + + +def delete_pycache(): + global folders + + for folder in folders: + if folder.endswith("__pycache__"): + shutil.rmtree(folder) + + print("All __pycache__ files deleted.") + return None + + +def delete_migrations(): + global folders + + for folder in folders: + if folder.endswith("migrations"): + for item in os.listdir(folder): + if not item.endswith("__init__.py"): + os.remove(os.path.join(folder, item)) + + print("All migration files deleted.") + return None + + +def delete_sqlite3(): + global base_dir + + db_file = os.path.join(base_dir, "troggle.sqlite3") + + if os.path.exists(db_file): + os.remove(db_file) + + +def main(): + global folders + + try: + get_directory_list() + delete_pycache() + delete_migrations() + delete_sqlite3() + print("All cleanup operations performed successfully.") + + except Exception as e: + print("There was some error! Aaargh. \n") + raise + + +if __name__ == "__main__": + main() \ No newline at end of file -- cgit v1.2.3