I commented in bug https://code.djangoproject.com/ticket/26110 but not
sure if the issue if the same.
{{{
import uuid
from django.db import models
from django.contrib.postgres.fields import JSONField
class PublishedConsent(models.Model):
uuid = models.UUIDField(
default=uuid.uuid4,
editable=False)
json = JSONField()
}}}
{{{
>>> p = JSONTest.objects.get(instance="4550d7f3a28c4081af5b3ff5ac62ab60")
>>> p.data
'{}'
>>> p.save()
>>> p = JSONTest.objects.get(instance="4550d7f3a28c4081af5b3ff5ac62ab60")
>>> p.data
'"{}"'
>>> p.save()
>>> p = JSONTest.objects.get(instance="4550d7f3a28c4081af5b3ff5ac62ab60")
>>> p.data
'"\\"{}\\""'
>>> p.save()
>>> p = JSONTest.objects.get(instance="4550d7f3a28c4081af5b3ff5ac62ab60")
>>> p.data
'"\\"\\\\\\"{}\\\\\\"\\""'
}}}
--
Ticket URL: <https://code.djangoproject.com/ticket/29473>
Django <https://code.djangoproject.com/>
The Web framework for perfectionists with deadlines.
Comment (by Tim Graham):
You are using Django 2.0? I can't reproduce with this test case for
`tests/postgres_tests/test_json.py`:
{{{
def test_string(self):
instance = JSONModel(field='{}')
instance.save()
loaded = JSONModel.objects.get()
self.assertEqual(loaded.field, '{}')
loaded.save()
loaded = JSONModel.objects.get()
self.assertEqual(loaded.field, '{}')
}}}
Does that pass for you? Can you provide a failing test for Django's test
suite?
--
Ticket URL: <https://code.djangoproject.com/ticket/29473#comment:1>
* status: new => closed
* resolution: => needsinfo
--
Ticket URL: <https://code.djangoproject.com/ticket/29473#comment:2>