Reputation: 11
Ok as part of my stupidity , instead for doing 'flush' , I deleted sqlite.db file under by django project directory. After that none of my db commands were working, for ex,
python manage.py showmigrations
Traceback (most recent call last):
File "manage.py", line 10, in <module>
execute_from_command_line(sys.argv)
File "django/lib/python3.4/site- packages/django/core/management/__init__.py", line 353, in execute_from_command_line
utility.execute()
File "django/lib/python3.4/site-packages/django/core/management/__init__.py", line 345, in execute
self.fetch_command(subcommand).run_from_argv(self.argv)
File "django/lib/python3.4/site-packages/django/core/management/base.py", line 348, in run_from_argv
self.execute(*args, **cmd_options)
File "django/lib/python3.4/site-packages/django/core/management/base.py", line 399, in execute
output = self.handle(*args, **options)
File "django/lib/python3.4/site-packages/django/core/management/commands/showmigrations.py", line 36, in handle
return self.show_list(connection, options['app_labels'])
File "django/lib/python3.4/site- packages/django/core/management/commands/showmigrations.py", line 44, in show_list
loader = MigrationLoader(connection, ignore_no_migrations=True)
File "django/lib/python3.4/site-packages/django/db/migrations/loader.py", line 49, in __init__
self.build_graph()
File "django/lib/python3.4/site-packages/django/db/migrations/loader.py", line 176, in build_graph
self.applied_migrations = recorder.applied_migrations()
File "django/lib/python3.4/site-packages/django/db/migrations/recorder.py", line 65, in applied_migrations
self.ensure_schema()
File "django/lib/python3.4/site-packages/django/db/migrations/recorder.py", line 56, in ensure_schema
with self.connection.schema_editor() as editor:
File "django/lib/python3.4/site-packages/django/db/backends/sqlite3/schema.py", line 25, in __enter__
self._initial_pragma_fk = c.fetchone()[0]
All of these commands are failing for similar reason \b
makemigrations migrate
Upvotes: 0
Views: 1032
Reputation: 11
Changing line 25 of django/db/backends/sqlite3/schema.py from this;
self._initial_pragma_fk = c.fetchone()[0]
to this
self._initial_pragma_fk = 0 # c.fetchone()[0]
enables you to proceed with the migration.
https://code.djangoproject.com/ticket/26205?cversion=0&cnum_hist=2
Upvotes: 1