2016-04-21 74 views
-1

您好我已经开发了我的项目在本地的机器,但我已经转移其生产成一台服务器,我收到以下错误:Django的NodeNotFoundError执行syncdb时

python manage.py syncdb 

Traceback (most recent call last): 
File "manage.py", line 10, in <module> 
execute_from_command_line(sys.argv) 
File "/usr/local/lib/python2.7/dist-packages/django/core/management/__init__.py", line 354, in execute_from_command_line 
utility.execute() 
File "/usr/local/lib/python2.7/dist-packages/django/core/management/__init__.py", line 346, in execute 
self.fetch_command(subcommand).run_from_argv(self.argv) 
File "/usr/local/lib/python2.7/dist-packages/django/core/management/base.py", line 394, in run_from_argv 
self.execute(*args, **cmd_options) 
File "/usr/local/lib/python2.7/dist-packages/django/core/management/base.py", line 445, in execute 
output = self.handle(*args, **options) 
File "/usr/local/lib/python2.7/dist-packages/django/core/management/commands/syncdb.py", line 25, in handle 
call_command("migrate", **options) 
File "/usr/local/lib/python2.7/dist-packages/django/core/management/__init__.py", line 120, in call_command 
return command.execute(*args, **defaults) 
File "/usr/local/lib/python2.7/dist-packages/django/core/management/base.py", line 445, in execute 
output = self.handle(*args, **options) 
File "/usr/local/lib/python2.7/dist-packages/django/core/management/commands/migrate.py", line 93, in handle 
executor = MigrationExecutor(connection, self.migration_progress_callback) 
File "/usr/local/lib/python2.7/dist-packages/django/db/migrations/executor.py", line 19, in __init__ 
self.loader = MigrationLoader(self.connection) 
File "/usr/local/lib/python2.7/dist-packages/django/db/migrations/loader.py", line 47, in __init__ 
self.build_graph() 
File "/usr/local/lib/python2.7/dist-packages/django/db/migrations/loader.py", line 321, in build_graph 
_reraise_missing_dependency(migration, parent, e) 
File "/usr/local/lib/python2.7/dist-packages/django/db/migrations/loader.py", line 291, in _reraise_missing_dependency 
raise exc 
django.db.migrations.graph.NodeNotFoundError: Migration MYapp.0010_auto_20160415_1815 dependencies reference nonexistent parent node (u'registration', u'0003_migrate_activatedstatus') 

我刚刚从一个复制我的项目机器到另一个。我的Django版本是1.8.11 任何人有任何想法? 感谢

+0

以任何机会你创造一些对这些迁移过Django 1.8的早期版本?在我的一个项目中,我看到了一些类似的项目,其中迁移可以使用1.8.0,然后在1.8.2或更高版本中突然崩溃,然后突然再次开始工作。可能想要尝试让它在本地工作,然后在执行任何操作之前为所有内容生成一个squash_migration。 – Paul

+0

Paul感谢您的回复。我想我已经找到了我的问题...我已经从生产中删除了旧的迁移文件,然后再次运行它...所以现在它正在工作 – Paul85

+0

恭喜您解决问题,对未来而言,很可能您的错误是由不同的在你的开发(新版本)和生产(旧版本)软件包上的'django-registration'版本。 为了避免出现这样的错误,请尽量保留带有版本号列出的所有依赖关系的'requirements.txt'文件 - 以便能够在相同版本中具有相同的依赖关系 - 当然还有virtualenv :) – Jerzyk

回答

0

检查您的Django的版本和升级你的依赖 确保按要求安装为您的项目的所有依赖关系,然后如果 检查你的Python版本相同