Django ProgrammingError列不存在

时间:2017-04-26 04:43:40

标签: django postgresql

我最近迁移到postgresql,我不确定问题的原因但是列不存在错误出现。

/ admin / mtsauth / authorms /中的ProgrammingError 列mtsauth_authorms.nihgrants不存在 第1行:..." secfirstname"," mtsauth_authorms"。" seclastname"," mtsauth_a ...



这是迁移文件

migrations.CreateModel(
            name='AuthorMS',
            fields=[
                ('firstname', models.CharField(max_length=120)),
                ('lastname', models.CharField(max_length=120)),
                ('ArticleId', models.AutoField(primary_key=True, `enter code here`serialize=False)),
                ('secfirstname', models.CharField(blank=True, default='None', max_length=120)),
                ('seclastname', models.CharField(blank=True, default='None', max_length=120)),
                ('nihgrants', models.BooleanField(default=False)),
                ('country', models.CharField(choices=[('INDIA', 'INDIA'), ('US', 'USA'), ('UK', 'UK'), ('RUSSIA', 'RUSSIA')], max_length=50)),
                ('seccountry', models.CharField(blank=True, choices=[('INDIA', 'INDIA'), ('US', 'USA'), ('UK', 'UK'), ('RUSSIA', 'RUSSIA')], default='None', max_length=50)),
                ('affliation', models.CharField(default='None', max_length=100)),
                ('secAffliation', models.CharField(blank=True, default='None', max_length=100)),
                ('code', models.IntegerField(default=101, max_length=10000)),
            ],
        ),

1 个答案:

答案 0 :(得分:0)

您的更改未完全反映在数据库中。这可能是因为您尚未迁移到数据库。确保通过为模型提供默认值为模型提供非可空字段的值。您可以通过运行以下命令来检查迁移的状态:

python manage.py showmigrations <your_app_name>

这将显示迁移列表。迁移左侧没有X的那个是您错过迁移的那个。