This commit is contained in:
Rasheed Hamdawi 2022-02-21 19:22:45 +05:00 committed by GitHub
commit 44c55f18ea
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -1,6 +1,7 @@
import inspect import inspect
import json import json
import re import re
import datetime
import six import six
from django.db import connection, transaction from django.db import connection, transaction
@ -55,6 +56,11 @@ def instantiate_middleware(middlewares):
yield middleware yield middleware
def stringify_datetime(value):
if isinstance(value, datetime.datetime):
return value.__str__()
class GraphQLView(View): class GraphQLView(View):
graphiql_template = "graphene/graphiql.html" graphiql_template = "graphene/graphiql.html"
@ -240,9 +246,15 @@ class GraphQLView(View):
def json_encode(self, request, d, pretty=False): def json_encode(self, request, d, pretty=False):
if not (self.pretty or pretty) and not request.GET.get("pretty"): if not (self.pretty or pretty) and not request.GET.get("pretty"):
return json.dumps(d, separators=(",", ":")) return json.dumps(d, separators=(",", ":"), default=stringify_datetime)
return json.dumps(d, sort_keys=True, indent=2, separators=(",", ": ")) return json.dumps(
d,
sort_keys=True,
indent=2,
separators=(",", ": "),
default=stringify_datetime,
)
def parse_body(self, request): def parse_body(self, request):
content_type = self.get_content_type(request) content_type = self.get_content_type(request)