为什么我无法在Django模型中添加新字段?我使用的是Docker容器

xqnpmsa8  于 2023-01-14  发布在  Go
关注(0)|答案(1)|浏览(180)

我在一个Docker容器中运行Django服务。Django有一个从AWS RDS远程访问Postgres数据库的权限,所有这些都运行良好。但是我在Model中添加了一个新字段 (amount)

class MyModel(models.Model):
    model_id = models.UUIDField(default=uuid.uuid4)
    model2 = models.ForeignKey(MyModel2, on_delete=models.CASCADE, related_name='mymodels')
    amount = models.FloatField(default=0) # this is new field
    updated_at = models.DateTimeField(auto_now=True)
    created_at = models.DateTimeField(auto_now_add=True)

MyModel表已存在于数据库中。price 是此处的新字段。每当我启动服务器并创建迁移时,都会创建新的迁移“accounts/migrations/0001_initial.py”。

docker-compose build
docker-compose up -d

docker-compose exec djangoservice bash
~\ python manage.py makemigrations
~\ python manage.py migrate

在这个过程之后,我的数据库表没有任何变化。2有人能告诉我我做错了什么吗?3我怎样才能在我现有的表中添加新的字段?

ecfdbz9o

ecfdbz9o1#

也许你可以考虑手动删除这个文件,我的意思是0001_initial.py。有时django的迁移检测不是很有效。

相关问题