默认值我有以下Django
型号代码:Django模型:为
status = models.PositiveIntegerField(default = 0b000)
comments_allowed = models.BooleanField(default = True) # whether comments are allowed to this post
但我预计,它会生成SQL像
`status` integer NOT NULL default '4',
`comments_allowed` bool NOT NULL default TRUE
这是不会发生,当我运行manage.py sqlall appname
它生产:
`status` integer UNSIGNED NOT NULL,
`comments_allowed` bool NOT NULL
Delving into Django
的代码和谷歌搜索给了我什么,但詹姆斯班纳特的评论认为default
不会影响生成SQL
,但需要为Django管理员。即使如此,我如何获得所需的效果?
我Django
版本是1.3.0最终
是'default'也可以分配可调用的对象将事实表明它主要在模型实例创建期间使用。除了手动运行'SQL ALTER'命令,AFAIK不可能做你想做的事情。 – 2011-05-27 14:38:53
谢谢,肖恩。我期待这个答案,因为我的谷歌搜索没有带来任何结果。 – Nemoden 2011-05-27 14:46:41
相关故障单:https://code.djangoproject.com/ticket/470 – Medorator 2013-09-23 19:11:16