0

为什么它不起作用?

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 for forms而不是模型我的错误

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

不工作=在模板中它不是必需的字段

4

3 回答 3

5

对了,我们来数一数这里的问题。

  1. 你用过forms.CharField,不存在。
  2. 即使它确实存在,这也是一个模型,因此您应该使用模型字段而不是表单字段。
  3. DESCSPECSOFT在定义它之前已经使用过。
  4. 选项是字符串,但默认是整数。
  5. 您没有提供任何有关“不工作”意味着什么的信息。
于 2012-10-03T09:55:57.667 回答
1

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

并且默认情况下还需要表单字段,并且它们不接受 null 或空白,请尝试 required=True 或 required=False

于 2012-10-03T09:49:03.610 回答
1
_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)

注意空白和空值被删除,因为它是默认需要的

于 2012-10-03T10:27:42.610 回答