Django sql/syncdb命令在PostgreSQL后端失败



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

python manage.py sql profile w/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 w/PostgreSQL (psycopg2):

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

为什么Django在两个DB后端表现不同?

Thomas是对的,确实有两个查询隐藏在models.py中的某个地方,它们指向Department类:

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

谢谢!

相关内容

最新更新