from django.core.management.base import BaseCommand from django.db import connection class Command(BaseCommand): help = "Clean up social auth tables and migrations" def handle(self, *args, **options): with connection.cursor() as cursor: # Drop social auth tables cursor.execute("DROP TABLE IF EXISTS socialaccount_socialapp") cursor.execute("DROP TABLE IF EXISTS socialaccount_socialapp_sites") cursor.execute("DROP TABLE IF EXISTS socialaccount_socialaccount") cursor.execute("DROP TABLE IF EXISTS socialaccount_socialtoken") # Remove migration records cursor.execute("DELETE FROM django_migrations WHERE app='socialaccount'") cursor.execute( "DELETE FROM django_migrations WHERE app='accounts' " "AND name LIKE '%social%'" ) # Reset sequences cursor.execute("DELETE FROM sqlite_sequence WHERE name LIKE '%social%'") self.stdout.write( self.style.SUCCESS("Successfully cleaned up social auth configuration") )