0

我有问题,我不知道如何更新数据库...

所以这是我的问题:我用一行更新了我的应用程序 models.py *yrs = models.CharField(max_length=4)*:

from django.db import models

class Books(models.Model):
    title = models.CharField(max_length=150)
    author = models.CharField(max_length=100)
    *yrs = models.CharField(max_length=4)*
    read = models.CharField(max_length=3)

    def __str__(self):
        return self.title + " / " + self.author + " / " + **self.yrs** + " / " + self.read + " "

所以,但现在我得到错误:

Exception Type: DatabaseError
Exception Value:    no such column: books_books.yrs

那么,你知道我该如何解决吗?谢谢 ;)

4

1 回答 1

2

您可以使用South迁移数据。如果您不关心现有数据,只需删除您的数据库文件(在 sqlite3 的情况下),然后 python manage syncdb再次运行

South 非常易于使用,本教程为您提供了许多真实示例。

如果 South 听起来对您没有吸引力,您也可以使用直接更改您的表dbshell

python manage.py dbshell
ALTER TABLE <appname_modelname> ADD COLUMN <column_type> DEFAULT '';
于 2013-09-11T06:45:03.853 回答