在 Django 中从 SQLite 迁移到 PostgreSQL 时出现问题

问题描述 投票:0回答:1

我正在尝试从 SQLite 迁移到 PostgreSQL。 “makemigrations”工作正常,但是当我运行“migrate”命令时,一切都变得复杂。

您好,我是 Django 的新手,在尝试使用新数据库从 SQLite 迁移到 PostgreSQL 时遇到以下错误

image 1

当我开始开发该项目时,我在模型中使用了像 TimeField 这样的字段。我附上了 0001_initial.py 中的一个片段。 image 2

后来,我意识到我应该以不同的方式使用时间值,并决定修改模型以使其成为 FloatField 类型。我的迁移文件 0004_alter_test_time_ human_and_more.py 的片段 image 3

我相信我明白问题是当我运行“迁移”命令时,Django 会遍历所有迁移文件,这就是与 PostgreSQL 发生冲突的地方。有人遇到过同样的问题吗?任何帮助将不胜感激。

python django postgresql sqlite
1个回答
0
投票

解决此问题的一个简单方法是再次生成所有迁移。请按照步骤操作。

  1. 更新与 PostgreSQL 的数据库连接(如果已在 PostgreSQL 中创建表,则删除表)

  2. 删除您创建的所有 django 应用程序中的所有迁移文件夹和迁移文件夹内的文件。

  3. 使用命令再次为所有应用程序生成迁移。您必须在 make migration 命令中提及您的应用程序名称。

    python manage.py makemigrations your_app1 your_app2 等等...

  4. 运行迁移命令

    python 管理.py 迁移

© www.soinside.com 2019 - 2024. All rights reserved.