1

我在 django 中创建模型时遇到问题。我写了一个这样的模型:

from django.db import models
class FooModel(models.Model):
    name = models.CharField(max_length = 255)

我跑

manage.py syncdb

但是当我在 shell 中时,我无法保存实例。每次我调用它时,它都会告诉我它缺少一列

manage.py shell
>>from app.models import FooModel
>>foo = FooModel()
>>foo.name = 'foo'
>>foo.save()
DatabaseError: column "name" of relation "ecommerce_foomodel" does not exist
LINE 1: INSERT INTO "ecommerce_foomodel" ("name") VALUES (E'123123as...

我们正在使用 postgres。

4

1 回答 1

1

数据库表是在您添加相应字段之前创建的。

因此,您可以使用以下方法重新创建该应用程序的所有表(如果您没有任何有用的数据):

python manage.py reset ecommerce

或者,您应该使用South将数据库迁移到最新版本。

于 2013-03-19T02:53:39.003 回答