迁移新的模型字段

Migrate new model fields

当我使用 manage.py makemigrations <app> 时,只有具有关系的列才会迁移到 pg 数据库。

如何指示 django 迁移新的基本非关系列,例如:

title = models.CharField(max_length=20, null=True)

我正在使用 Django 1.8.2。在 Ubuntu

当您 运行 manage.py makemigrations <app> 时,根本不会迁移任何字段,因为该命令只会在您的 <app>/migrations/ 目录中创建新的迁移。只有当您 运行 manage.py migrate 更改才会写入数据库。

如果您没有得到预期的结果,请查看最新的迁移并确定它影响了哪些字段。所有字段都应该作为迁移的目标,而不仅仅是关系字段。更改 max_lengthblankrequired 等属性应该会触发迁移。如果他们不这样做,可能是因为您的更改不需要任何数据库架构修改。

如果您仍有问题,请post:

  1. 模型变更前的模型
  2. 模型更改后的模型
  3. makemigrations
  4. 生成的迁移