我似乎无法在Django中的两个模型之间创建一个初始可延迟的外键关系,并使用SQLite3作为我的后端存储。
考虑这个简单的例子。这就是 models.py 的样子:
from django.db import models
class Investigator(models.Model):
name = models.CharField(max_length=250)
email = models.CharField(max_length=250)
class Project(models.Model):
name = models.CharField(max_length=250)
investigator = models.ForeignKey(Investigator)
这就是 sqlall 的输出:
BEGIN;
CREATE TABLE "moo_investigator" (
"id" integer NOT NULL PRIMARY KEY,
"name" varchar(250) NOT NULL,
"email" varchar(250) NOT NULL
)
;
CREATE TABLE "moo_project" (
"id" integer NOT NULL PRIMARY KEY,
"name" varchar(250) NOT NULL,
"investigator_id" integer NOT NULL REFERENCES "moo_investigator" ("id")
)
;
CREATE INDEX "moo_project_a7e50be7" ON "moo_project" ("investigator_id");
COMMIT;
项目表中的* investigator_id *列中缺少P.S。我是Python和Django的新手 - 使用Python版本2.6.1 Django版本1.4和SQLite版本3.6.12