我正在建设一个具有数字下载功能的回收站,我需要在产品模型中添加一个字段,我知道夹层允许注入属性字段,但当我运行模式迁移时,它添加了第一个字段,然后挂起,不添加其他字段,有没有人知道为什么会发生这种情况,这里是我的额外模型部分如下。
EXTRA_MODEL_FIELDS = (
(
"cartridge.shop.models.Order.callback_uuid",
"django.db.models.CharField",
(),
{"blank" : False, "max_length" : 36, "default": ""},
),
(
"cartridge.shop.models.Product.download_file",
"django.db.models.FileField",
(),
{ "blank" : True, "upload_to" : "downloads", },
),
)因此,为了明确我正在运行的命令是python manage.py schemamigration cartridge.shop --auto --stdout > content/migrations/0001_cartridge_shop_add_download_file.py
它说字段callback_uuid是添加的,但是这个字段已经存在,所以它很好,然后挂起而不添加download_file。
任何帮助都将不胜感激。
发布于 2014-07-30 19:36:21
这个问题的答案是向atributes添加一个缺省值,它不会使用none类型,但是如果您传递一个空字符串,它就能正常工作。
EXTRA_MODEL_FIELDS = (
(
"cartridge.shop.models.Order.callback_uuid",
"django.db.models.CharField",
(),
{"blank" : False, "max_length" : 36, "default": ""},
),
(
"cartridge.shop.models.Product.download_file",
"django.db.models.FileField",
(),
{ "blank" : True, "default" : "" , "upload_to" : "downloads", },
),
)https://stackoverflow.com/questions/25045186
复制相似问题