2017-11-30 2 views
1

기존 Django 1.10 응용 프로그램이 있는데 새로운 db를 처음부터 로컬로 생성하려고합니다. 나는 예외 여기기존 Django 프로젝트에서 db를 처음부터 복원 할 수 없습니다.

Traceback (most recent call last): 
    File "./manage.py", line 10, in <module> 
    execute_from_command_line(sys.argv) 
    File "/home/me/workspace/myproject-django/venv/local/lib/python2.7/site-packages/django/core/management/__init__.py", line 367, in execute_from_command_line 
    utility.execute() 
    File "/home/me/workspace/myproject-django/venv/local/lib/python2.7/site-packages/django/core/management/__init__.py", line 341, in execute 
    django.setup() 
    File "/home/me/workspace/myproject-django/venv/local/lib/python2.7/site-packages/django/__init__.py", line 27, in setup 
    apps.populate(settings.INSTALLED_APPS) 
    File "/home/me/workspace/myproject-django/venv/local/lib/python2.7/site-packages/django/apps/registry.py", line 115, in populate 
    app_config.ready() 
    File "/home/me/workspace/myproject-django/venv/local/lib/python2.7/site-packages/django/contrib/admin/apps.py", line 23, in ready 
    self.module.autodiscover() 
    File "/home/me/workspace/myproject-django/venv/local/lib/python2.7/site-packages/django/contrib/admin/__init__.py", line 26, in autodiscover 
    autodiscover_modules('admin', register_to=site) 
    File "/home/me/workspace/myproject-django/venv/local/lib/python2.7/site-packages/django/utils/module_loading.py", line 50, in autodiscover_modules 
    import_module('%s.%s' % (app_config.name, module_to_search)) 
    File "/usr/lib/python2.7/importlib/__init__.py", line 37, in import_module 
    __import__(name) 
    File "/home/me/workspace/myproject-django/customauth/admin.py", line 7, in <module> 
    from core.admin import ShopInline 
    File "/home/me/workspace/myproject-django/core/admin.py", line 242, in <module> 
    admin.site.register(Campaign, CampaignAdmin) 
    File "/home/me/workspace/myproject-django/venv/local/lib/python2.7/site-packages/django/contrib/admin/sites.py", line 108, in register 
    admin_obj = admin_class(model, self) 
    File "/home/me/workspace/myproject-django/core/admin.py", line 104, in __init__ 
    last_task = TaskState.objects.filter(name='core.tasks.compute_metrics', state='SUCCESS').order_by('tstamp').last() 
    File "/home/me/workspace/myproject-django/venv/local/lib/python2.7/site-packages/django/db/models/query.py", line 565, in last 
    objects = list((self.reverse() if self.ordered else self.order_by('-pk'))[:1]) 
    File "/home/me/workspace/myproject-django/venv/local/lib/python2.7/site-packages/django/db/models/query.py", line 256, in __iter__ 
    self._fetch_all() 
    File "/home/me/workspace/myproject-django/venv/local/lib/python2.7/site-packages/django/db/models/query.py", line 1087, in _fetch_all 
    self._result_cache = list(self.iterator()) 
    File "/home/me/workspace/myproject-django/venv/local/lib/python2.7/site-packages/django/db/models/query.py", line 54, in __iter__ 
    results = compiler.execute_sql() 
    File "/home/me/workspace/myproject-django/venv/local/lib/python2.7/site-packages/django/db/models/sql/compiler.py", line 835, in execute_sql 
    cursor.execute(sql, params) 
    File "/home/me/workspace/myproject-django/venv/local/lib/python2.7/site-packages/django/db/backends/utils.py", line 79, in execute 
    return super(CursorDebugWrapper, self).execute(sql, params) 
    File "/home/me/workspace/myproject-django/venv/local/lib/python2.7/site-packages/django/db/backends/utils.py", line 64, in execute 
    return self.cursor.execute(sql, params) 
    File "/home/me/workspace/myproject-django/venv/local/lib/python2.7/site-packages/django/db/utils.py", line 94, in __exit__ 
    six.reraise(dj_exc_type, dj_exc_value, traceback) 
    File "/home/me/workspace/myproject-django/venv/local/lib/python2.7/site-packages/django/db/backends/utils.py", line 64, in execute 
    return self.cursor.execute(sql, params) 
django.db.utils.ProgrammingError: relation "celery_monitor_taskstate" does not exist 
LINE 1: ...ker_id", "celery_monitor_taskstate"."hidden" FROM "celery_mo... 

납니다

$ createdb -h localhost -p 5432 -U me -w my_db # OK 
$ ./manage.py migrate 

다음 단계에 따라

requirements.txt

celery==4.0.2 
django-celery-beat==1.0.1 
django-celery-monitor==1.1.0 
django-celery-results==1.0.1 

의 관련 부분입니다 그리고 여기 INSTALLED_APPS

내입니다
INSTALLED_APPS = (
    'modeltranslation', 
    ... 
    'django.contrib.admin', 
    'django.contrib.auth', 
    'django.contrib.contenttypes', 
    'django.contrib.sessions', 
    'django.contrib.messages', 
    'django.contrib.staticfiles', 
    'django.contrib.sites', 
    'django.contrib.postgres', 
    'django_countries', 
    'django_extensions', 
    'django.contrib.humanize', 
    'django_celery_results', 
    'django_celery_beat', 
    'django_celery_monitor', 
    ... 
) 

617,451,515,은 내가

$ ./manage.py migrate django_celery_monitor # also tried for _results and _beat 

을하려고 노력하지만 같은 오류가 발생합니다.

+0

전체 추적 표시. 그리고 왜 진짜로 이주하고 싶을 때'--fake'를 사용하고 있습니까? –

+0

당신은'--fake'에 대해 옳았습니다. 아무 의미가 없습니다. 어쨌든 플래그가 있거나없는 동일한 문제점이 발생합니다. – Buddyshot

+0

오, 이제 알 겠어. 문제를 찾기 위해 전체 추적을 읽어야했다. – Buddyshot

답변

1

좋아요. 문제는 초기화 중에 TaskState을 검색하려고 시도한 관리 모듈의 코드에서 발생했습니다. 따라서 이주가 수행되기 전에 예외가 발생했습니다.

관련 문제