如何解决如何更新 MySQL 数据库中的 Django 模型字段
我为 Django 中的帖子创建了一个模型,我正在尝试更新数据库 (MysqL) 中的一个字段。 我有以下代码块: 模型.py
class Post (models.Model):
title = models.CharField()
preamble = models.CharField()
body = models.TextField ()
createdAt = models.DateTimeField(auto_Now_add=True,blank=True)
我想添加另一个名为 author author=models.ForeignKey(User,on_delete=models.CASCADE
的字段
另外,我想将其中一个字段的名称从 preamble
更改为 introduction
每当我运行命令 python manage.py makemigrations
和 python manage.py migrate
时,我都会收到终止迁移过程的错误。它告诉我我的数据库中的字段 preamble
无法识别。是否可以将 preamble
更新为 introduction
?
解决方法
- 确保在进行任何修改之前迁移应用的初始状态。
- 将模型中的
preamble
字段重命名为introduction
,不做其他更改。 - 运行
makemigrations
。它应该询问您是否是重命名。 - 添加
author
外键。 - 运行
makemigrations
。如果用户字段不可为空,它应该要求您提供默认值;1
应该是指在您的系统中创建的第一个用户。 - 运行
migrate
。
这应该可行:
- 删除 SQLite 数据库和迁移目录
- 改变模型
- 然后运行迁移命令
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。