diff --git a/rest_framework/fields.py b/rest_framework/fields.py index 48fed3a49..6d021d37c 100644 --- a/rest_framework/fields.py +++ b/rest_framework/fields.py @@ -1024,8 +1024,10 @@ class ChoiceField(Field): def to_representation(self, value): if value in ('', None): return value - return self.choice_strings_to_values[six.text_type(value)] - + try: + return self.choice_strings_to_values[six.text_type(value)] + except KeyError: + return value class MultipleChoiceField(ChoiceField): default_error_messages = {