0

我正在尝试将基于 MySQL 的 Django 项目迁移到 PostgreSQL。不幸的是,一旦我在 settings.py 中切换数据库后端,所有 sql/syncdb 命令都会失败。

python manage.py sql profile带 MySQL:

BEGIN;
CREATE TABLE `profile_department` (
     `id` integer AUTO_INCREMENT NOT NULL PRIMARY KEY,
     `name` varchar(100) NOT NULL UNIQUE,
     [...]

python manage.py sql profile带 PostgreSQL (psycopg2):

DatabaseError: relation "profile_department" does not exist
LINE 1: ...nt"."homepage", "profile_department"."gd_id" FROM "profile_d...
                                                         ^

为什么 Django 对两个数据库后端的行为不同?

4

1 回答 1

1

Thomas 是对的,在 models.py 中确实有两个查询涉及到 Department 类:

ROOT_DEPARTMENT = Department.objects.get(pk=14)
FACULTIES = Department.objects.filter(parent=ROOT_DEPARTMENT)

谢谢!

于 2013-04-09T15:52:17.917 回答