表格已迁移后,如何在数据库中更新Django模型的max_length值

时间:2018-11-26 02:37:04

标签: python django django-models

我需要更多字符可用于我创建的博客的标题和副标题字段。我想将max_length从100增加到150。这是表格:

class Post(models.Model):
    title = models.CharField(max_length=100)
    subtitle = models.CharField(max_length=100)
    slug = models.SlugField(max_length=99)
    date_added = models.DateTimeField(default=timezone.now)
    author = models.CharField(max_length=60)
    body = models.TextField()
    category = models.ForeignKey(Category, on_delete=models.CASCADE)
    tags = models.ManyToManyField(Tag)

通过另一个问答,我建议将模型中的max_length更改为100(以我的情况为150),然后在命令提示符下键入以下内容:

python manage.py makemigrations
python manage.py migrate

然后我提交了更改,并允许我键入更多字符,但是在提交帖子时,它出现了数据库错误,指出字段只能使用100个字符。

如何获取数据库以识别max_characters中的更改?

1 个答案:

答案 0 :(得分:0)

您可以更改它,然后重新运行迁移,或者执行python manage.py migrate my_app 0008_previous_migration,然后删除其中包含错误的较新的迁移文件,然后重新运行命令。 您可以执行python manage.py showmigrations my_app