When i run makemigrations
command, i got this error:
Traceback (most recent call last):
...
django.db.migrations.exceptions.NodeNotFoundError:
If you have not any serious data in your database, you can simply reset your migrations, as it's been explained here.
Delete the file product.0002_auto_20160618_1143 migration file.
and again run the following commands:
1.python manage.py makemigrations.
2.python manage.py migrate.
If it not solve after reseting the migrations, follow the following steps: Apparently django kept migration files within it's own module folder. This is why you need to flush the django:
If you have dangling dependency to 0002_auto_20160618_1143
in a file created by makemigrations
command and file does not exist then, please remove this reference from that file. Remember to to remove migration from django_migrations
table as well. That fixed my issue
dependencies = [
('workspace', '0002_auto_20160618_1143'),
('datasets', '0001_initial'),
]
If you open the migration file products.0002_auto_20160618_1143
you will see a section called dependencies:
dependencies = [("products", "0001_initial")]
Which will look like that. This line tell Django that the current file depends on that file. A file that given that error message isn't there. You can try commenting out that line and running the command again. Be aware that if one file is missing it's possible many are missing so you should reconcile your dependencies with what files you actually have.
DISCLAIMER: If this is a production DB messing around with migration files can be dangerous if you don't know what you are doing. You should test this on a staging or dev server first (preferably one that has a snapshot you can restore to).