Django - ChoiceFieldcleaned_data 获取字符串而不是整数

Jor*_*ara 5 forms django integer cleaned-data choicefield

我有一个名为“单位”的表单字段,如下所示:

    units = forms.ChoiceField(choices=[(x, x) for x in range(1, 11)], help_text = 'Units: ')
Run Code Online (Sandbox Code Playgroud)

当我这样做时,form.cleaned_data['units']我得到一个字符串而不是一个整数。如何更改字段以获取整数?

Jor*_*ara 9

我终于找到了 Field type TypedChoiceField,如果 coerced = Int,它将返回 Integer。

    units = forms.TypedChoiceField(choices=[(x, x) for x in range(1, 11)], coerce=int, help_text = 'Units: ')
Run Code Online (Sandbox Code Playgroud)