KnowledgeHub
Questions
Tags
Users
Search
Alex Rivera
|
Logout
Edit Question
Title
Body
I'm trying to reset a database in Django, using: python manage.py reset app but get the following error: Error: Error: app couldn't be reset. Possible reasons: * The database isn't running or isn't configured correctly. * At least one of the database tables doesn't exist. * The SQL was invalid. Hint: Look at the output of 'django-admin.py sqlreset app'. That's the SQL this command wasn't able to run. The full error: cannot drop table app_record because other objects depend on it HINT: Use DROP ... CASCADE to drop the dependent objects too. This is what my models.py file looks like: class Record(models.Model): name = models.CharField(max_length=50, db_index=True) year = models.IntegerField(blank=True, null=True) def __unicode__(self): return self.name class Class(models.Model): record = models.ForeignKey(Record) def __unicode__(self): return self.id I get that I need to use the DROP... CASCADE command in the SQL that deletes and recreates the database (the output of django-admin.py). But how can I edit that SQL directly from models.py? UPDATE OK, I figured out how to delete tables manually (the database is postgres), have noted it here for anyone with the same problem: python manage.py dbshell # drop table app_record cascade; # \q python manage.py reset app Would still like to know if anyone has a better way to do it, though :)
Tags (comma-separated)
Save Edits
Cancel