Django Rest Framework mulitplechoicefield - int 不可迭代

Django Rest Framework mulitplechoicefield - int not iterable

我开始使用和实施 Django Rest Framework,但我对多选字段有疑问。

我的变量 "CHOICES" 如下所示

(('0', 'Read Only'), ('5', 'Operator 1'), ('7', 'Operator 2'), ('100', 'Supervisor 1'), ('102', 'Supervisor 2'), ('255', 'Administrator'))

设置字段的行看起来像

access = serializers.MultipleChoiceField(choices=CHOICES, allow_blank=False)

但我收到以下错误

File "C:\Python27\lib\site-packages\rest_framework\fields.py", line 1348, in to_representation self.choice_strings_to_values.get(six.text_type(item), item) for item in value TypeError: 'int' object is not iterable

当进入 fields.py 并打印值时,它只是一个 255

我已经尝试显式迭代当前列表并将项目添加到新数组,但同样的问题。

我错过了什么?

已将 "MultipleChoiceField" 更改为 "ChoiceField",效果很好。 我想我误解了 "MultipleChoiceField"