2010-08-09 9 views
0

Django 데이터베이스를 삭제해야했습니다 (모든 테이블 삭제). 이제 "manage.py syncdb"를 실행하여 해당 테이블을 다시 만들려고 할 때 "Table 'user_database.engine.city'테이블이 존재하지 않습니다."느린 장고 데이터베이스

이 테이블을 계속 dnnago에게 알려주는 파일이 있습니다. 있다?

EDITED 질문 :

내가 (모든 테이블을 드롭) 내 장고 데이터베이스를 제거했다. 나는이 메시지가 해당 테이블을 다시 "manage.py syncdb"를 실행하려고 지금 때 느린 파일이이 테이블 djnago 말하고있다

Traceback (most recent call last): 
File "manage.py", line 11, in <module> 
execute_manager(settings) 
File "/home4/username/.local/lib/python2.6/site-packages/django/core/management/__init__.py", line 438, in execute_manager 
utility.execute() 
File "/home4/username/.local/lib/python2.6/site-packages/django/core/management/__init__.py", line 379, in execute 
self.fetch_command(subcommand).run_from_argv(self.argv) 
File "/home4/username/.local/lib/python2.6/site-packages/django/core/management/base.py", line 191, in run_from_argv 
self.execute(*args, **options.__dict__) 
File "/home4/username/.local/lib/python2.6/site-packages/django/core/management/base.py", line 209, in execute 
translation.activate('en-us') 
File "/home4/username/.local/lib/python2.6/site-packages/django/utils/translation/__init__.py", line 66, in activate 
return real_activate(language) 
File "/home4/username/.local/lib/python2.6/site-packages/django/utils/functional.py", line 55, in _curried 
return _curried_func(*(args+moreargs), **dict(kwargs, **morekwargs)) 
File "/home4/username/.local/lib/python2.6/site-packages/django/utils/translation/__init__.py", line 36, in delayed_loader 
return getattr(trans, real_name)(*args, **kwargs) 
File "/home4/username/.local/lib/python2.6/site-packages/django/utils/translation/trans_real.py", line 193, in activate 
_active[currentThread()] = translation(language) 
File "/home4/username/.local/lib/python2.6/site-packages/django/utils/translation/trans_real.py", line 176, in translation 
default_translation = _fetch(settings.LANGUAGE_CODE) 
File "/home4/username/.local/lib/python2.6/site-packages/django/utils/translation/trans_real.py", line 159, in _fetch 
app = import_module(appname) 
File "/home4/username/.local/lib/python2.6/site-packages/django/utils/importlib.py", line 35, in import_module 
__import__(name) 
File "/home4/username/.local/lib/python2.6/site-packages/massivecoupon/engine/views.py", line 12, in <module> 
File "/home4/username/.local/lib/python2.6/site-packages/deals/engine/forms.py", line 40, in <module> 
class EmailSubForm(forms.Form): 
File "/home4/username/.local/lib/python2.6/site-packages/deals/engine/forms.py", line 42, in EmailSubForm 
city    = forms.ChoiceField(initial=1, choices=[ (obj.id, obj.name) for obj in enginemodels.City.objects.all() ]) 
File "/home4/username/.local/lib/python2.6/site-packages/django/db/models/query.py", line 106, in _result_iter 
self._fill_cache() 
File "/home4/username/.local/lib/python2.6/site-packages/django/db/models/query.py", line 760, in _fill_cache 
self._result_cache.append(self._iter.next()) 
File "/home4/username/.local/lib/python2.6/site-packages/django/db/models/query.py", line 269, in iterator 
for row in compiler.results_iter(): 
File "/home4/username/.local/lib/python2.6/site-packages/django/db/models/sql/compiler.py", line 672, in results_iter 
for rows in self.execute_sql(MULTI): 
File "/home4/username/.local/lib/python2.6/site-packages/django/db/models/sql/compiler.py", line 727, in execute_sql 
cursor.execute(sql, params) 
File "/home4/username/.local/lib/python2.6/site-packages/django/db/backends/mysql/base.py", line 86, in execute 
return self.cursor.execute(query, args) 
File "/home4/username/.local/lib/python2.6/site-packages/MySQL_python-1.2.3-py2.6-linux-x86_64.egg/MySQLdb/cursors.py", line 174, in execute 
File "/home4/username/.local/lib/python2.6/site-packages/MySQL_python-1.2.3-py2.6-linux-x86_64.egg/MySQLdb/connections.py", line 36, in defaulterrorhandler 
django.db.utils.DatabaseError: (1146, "Table 'username_enjoy.engine_city' doesn't exist") 

인가 "테이블 'username_database.engine_city'는 존재하지 않습니다" 아직도 존재합니까?

+2

당신이 생각하는 것과는 완전히 다른 문제가있는 것 같습니다. 'user_database.engine.city'는 유효한 테이블 이름이 아닙니다 ('user_database'라는 데이터베이스에서'engine' 테이블에있는'city' 컬럼을 참조하는 것과 비슷합니다). 어딘가에 무언가가 깨졌습니다. –

+0

감사합니다. 잘못 입력했습니다 : User_database.engine_city - 변경 사항이 있는지 확실하지 않습니다. –

+0

질문을 편집하고 방금 언급 한 내용을 변경하십시오. –

답변

2

모델 유효성 검사 중일 때 대량 구매 모듈이 거래 모듈을 트리거하여 캐시를 채우는 것처럼 보입니다. 파이썬에서

수입은 실제로 가져온 모듈에서 코드를 실행, 이것은 잘못 코딩 수입 루틴은 의도하지 않은 결과 i가 설치된 앱에 바로 장고의 기본 목록을 아래로 트리밍 제안 무엇

을 갖는 고전적인 경우이다 , syncdb, syncdb를 사용하여 한 번에 하나씩 응용 프로그램을 추가하기 시작합니다.

이렇게하면 해당 응용 프로그램을 가져 오는 전에 에 의존하는 표가 생성됩니다.

행운을 빈다.

1

내 모델 중 하나에 기본으로 존재하는 ModelName.objects.get (id = 1)이 있었기 때문에이 테이블이 필요했습니다. ModelName (id = 1)으로 변경했는데 문제가 해결되지 않았습니다.