我将带有ForeignKey的SubForum类转换为自我父级:
class Forum(models.Model):
name = models.CharField(max_length=200)
url = models.URLField()
class SubForum(models.Model):
name = models.CharField(max_length=200)
orginal_id = models.IntegerField()
forum = models.ForeignKey('Forum')
parent = models.ForeignKey('self', null=True, blank=True)
我想允许null和空白的enteries - 我看到了这个例子,这是一个正确的方法。
在sql视图中一切正常:
BEGIN;CREATE TABLE "main_forum" (
"id" integer NOT NULL PRIMARY KEY,
"name" varchar(200) NOT NULL,
"url" varchar(200) NOT NULL
)
;
CREATE TABLE "main_subforum" (
"id" integer NOT NULL PRIMARY KEY,
"name" varchar(200) NOT NULL,
"orginal_id" integer NOT NULL,
"forum_id" integer NOT NULL REFERENCES "main_forum" ("id"),
"parent_id" integer
)
;COMMIT;
在parent_id
字段中没有NOT NULL
,但是当我想使用管理面板添加新的SubForum而没有设置父级时,我会收到错误:
Cannot assign None: "SubForum.parent" does not allow null values.
怎么了?
答案 0 :(得分:2)
我做了一些更改,将其还原,现在一切正常......我发现这里发布的代码没有任何区别......
我应该删除问题吗?