【问题标题】:Django ProgrammingError column does not existDjango ProgrammingError 列不存在
【发布时间】:2017-04-26 04:43:39
【问题描述】:

我最近迁移到 postgresql,我不确定问题的原因,但出现了 column does not exist 错误。

/admin/mtsauth/authorms/ 处的编程错误 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)),
            ],
        ),

【问题讨论】:

  • 在 postgres 中创建数据库后首先运行的是什么?
  • 首先我删除了所有 .pyc 文件和迁移文件,并运行了这个命令:python manage.py makemigrations
  • 你试过了吗:python manage.py makemigrations
  • 是的,我试过了,它奏效了。但是当我打开管理面板并单击上面的模型链接添加数据时,就会出现错误。
  • 在 makemigrations 之后,您还需要运行 migrate。 ```python manage.py 迁移 ```

标签: django postgresql


【解决方案1】:

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

python manage.py showmigrations <your_app_name>

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

【讨论】:

    猜你喜欢
    • 2015-11-01
    • 2019-07-14
    • 2018-08-30
    • 1970-01-01
    • 2016-04-11
    • 2016-10-01
    • 2020-02-09
    • 2015-10-12
    • 1970-01-01
    相关资源
    最近更新 更多