首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Django-models:带有选择属性的CharField

Django-models:带有选择属性的CharField
EN

Stack Overflow用户
提问于 2012-10-03 17:37:20
回答 3查看 6.9K关注 0票数 0

为什么它不工作??

代码语言:javascript
复制
DESCSPECSOFT = (
    (u'99','-'),
    (u'Load',u'Load'),
    (u'Script',u'Script'),
    (u'Load & Script',u'Load & Script'),
    )   
descSpecSoft = models.CharField(choices=DESCSPECSOFT, default=99,blank = False,null = False)

谢谢

编辑:

用于表单而不是模型的SOry我错了

EDIT2:“选项是字符串,但默认值是整数。您没有提供任何有关”不工作“的信息。”

Not working =在模板中其非必填字段

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2012-10-03 18:27:43

代码语言:javascript
复制
_CharField = partial(models.CharField, max_length=255)

DESCSPECSOFT = model_utils.Choices(
    (u'99','-'),
    (u'load',u'Load'),
    (u'script',u'Script'),
    (u'load_script',u'Load & Script'),
)
descSpecSoft = _CharField(choices=DESCSPECSOFT, default=DESCSPECSOFT.load)

请注意,删除了空白和null,因为缺省情况下它是必需的

票数 1
EN

Stack Overflow用户

发布于 2012-10-03 17:55:58

好了,让我们来计算一下这里的问题。

  1. 您使用了不存在的forms.CharField
  2. 即使它确实存在,这也是一个模型,因此您应该使用模型字段,而不是表单字段。
  3. 在定义它之前,您已经使用了DESCSPECSOFT
  4. 选项是字符串,但默认值是整数。
  5. 您没有提供有关“不工作”含义的任何信息。
票数 5
EN

Stack Overflow用户

发布于 2012-10-03 17:49:04

尝试forms.ChoiceField(),而不是默认的Try initial='99‘

默认情况下,表单域也是必需的,它们不接受null或空白,请尝试使用required=True或required=False

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/12705723

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档