JSONField(binary=True) represents using binary strings, which JSONRenderer does not support. · Issue #4185 · encode/django-rest-framework (original) (raw)

Skip to content

Provide feedback

Saved searches

Use saved searches to filter your results more quickly

Sign up

@nikmolnar

Description

@nikmolnar

Checklist

Steps to reproduce

from rest_framework import serializers

class TestSerializer(serializers.Serializer): json = serializers.JSONField()

s = TestSerializer(data={'json': "{broken JSON"}) assert s.is_valid() is False

Expected behavior

Invalid JSON should result in is_valid() returning False.

Actual behavior

is_valid() returns True

Specifying binary=True for the field definition results in the desired behavior for serialization, but causes deserialization to fail on Python 3.