2012-05-25 2 views
0

아주 지저분 해지면 데이터베이스를 처음부터 다시 시작하기로 결정했습니다. 그래서 데이터베이스를 삭제하고 syncdb로 다시 만들려고합니다. 아래에서 볼 수 있듯이 목재 관리 내부에서 timber_uuid를 찾을 수 없기 때문에 넘어지는 테이블 인 timber_management가 생성됩니다. 그러나 그것은 아직 목재 관리가 아니기 때문에 오히려 혼란 스럽습니다.Django syncdb 명령이 생성하는 테이블에서 열을 찾을 수 없습니다.

Creating table timber_measurement 
Traceback (most recent call last): 
    File "manage.py", line 11, in <module> 
    execute_manager(settings) 
    File "c:\python26\lib\site-packages\django\core\management\__init__.py", line 438, in execute_manager 
    utility.execute() 
    File "c:\python26\lib\site-packages\django\core\management\__init__.py", line 379, in execute 
    self.fetch_command(subcommand).run_from_argv(self.argv) 
    File "c:\python26\lib\site-packages\django\core\management\base.py", line 191, in run_from_argv 
    self.execute(*args, **options.__dict__) 
    File "c:\python26\lib\site-packages\django\core\management\base.py", line 220, in execute 
    output = self.handle(*args, **options) 
    File "c:\python26\lib\site-packages\django\core\management\base.py", line 351, in handle 
    return self.handle_noargs(**options) 
    File "c:\python26\lib\site-packages\django\core\management\commands\syncdb.py", line 99, in handle_noargs 
    cursor.execute(statement) 
    File "c:\python26\lib\site-packages\django\db\backends\util.py", line 15, in execute 
    return self.cursor.execute(sql, params) 
    File "c:\python26\lib\site-packages\django\db\backends\sqlite3\base.py", line 200, in execute 
    return Database.Cursor.execute(self, query, params) 
django.db.utils.DatabaseError: table timber_measurement has no column named timber_uuid 

장고 모델 :

class TimberMeasurement(models.Model): 
    uuid    = UUIDField(primary_key=True) 
    timber   = models.ForeignKey(Timber, db_column='timber_uuid',null=True, blank=True, editable=False) 
    measurement_value = models.FloatField(null=True, blank=True) 
    measurement_type = models.IntegerField(null=True, blank=True, choices=MEASUREMENT_TYPE, editable=False) 

    class Meta: 
     app_label = 'boughtin' 
     db_table = 'timber_measurement' 
     unique_together = ('timber', 'measurement_value', 'measurement_type') 

답변

0

신선한 syncdb를 실행하기 전에 다음과 같은

#unique_together = ('timber', 'measurement_value', 'measurement_type') 
을 할 수있는 요구 될 것으로 보인다
관련 문제