python - Django Rest 框架序列化器中有没有什么方法可以忽略选择字段中的大小写?

标签 python django django-rest-framework

class MySerializer(serializers.Serializer):
  contract = fields.ChoiceField(choices=(
    ('no', 'no'),
    ('yes', 'yes'),
  ))

所以这里我的输入可以是以下之一。 不,不,是,是

对于这些,我需要为 Capital one 添加 2 个条目吗?

contract = fields.ChoiceField(choices=(
    ('no', 'no'),
    ('yes', 'yes'),
    ('No', 'no'),
    ('Yes', 'yes'),

  ))

或者有什么方法可以忽略这种情况?

最佳答案

http://www.django-rest-framework.org/api-guide/fields/#choicefield

如果你想把它留给用户,你可能需要考虑更多选项,比如“yes”、“Yes”、“YES”,而不仅仅是“yes,”Yes”

我希望您将它们转换为小写字母并使用 .lower() 将其设置在字段上,这样您将始终获得小写字母作为输入

关于python - Django Rest 框架序列化器中有没有什么方法可以忽略选择字段中的大小写?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32989163/

相关文章:

django - 如何设置lookup_field?

python - numpy.array2string 未检测 native 类型

python - 将空行附加到 Pandas 中的数据框

python - 如何通过第一列值简单地过滤 3d numpy 数组?

python - Django admin - 使所有字段只读

python - django:必填字段在 HTML 中没有 "required"属性

python - Django QuerySet .count() 为 0 并且 .exists() 为 false,即使 QuerySet 中有一个对象(Django Rest Framework)

python - 如何从 python 2.3.4 中 IOError 的错误对象中获取目录名称?

javascript - 压缩 WireClouds JavaScript 文件

python - Django Rest框架绑定(bind)参数时出错