Skip to content
Snippets Groups Projects
Commit d6abe1425481 authored by Arnaud Vergnet's avatar Arnaud Vergnet :sun_with_face:
Browse files

fix: convert date and time object to iso format for JSON

parent 4a6469bc0766
No related branches found
No related tags found
1 merge request!18fix: convert date and time object to iso format for JSON
Pipeline #135451 passed
......@@ -2,9 +2,10 @@
This cube is the new api which will be integrated in CubicWeb 4.
"""
from datetime import datetime
from datetime import datetime, date, time
from typing import Union
from pyramid.config import Configurator
from pyramid.renderers import JSON
......@@ -6,12 +7,18 @@
from pyramid.config import Configurator
from pyramid.renderers import JSON
def datetime_adapter(obj, request):
def datetime_adapter(obj: Union[datetime, date, time], request):
"""
Converts datetime, date and time object to an ISO string for JSON serialization
:param obj: the object to convert
:param request: the current request
:return:
"""
return obj.isoformat()
def includeme(config: Configurator):
json_renderer = JSON()
json_renderer.add_adapter(datetime, datetime_adapter)
......@@ -12,9 +19,11 @@
return obj.isoformat()
def includeme(config: Configurator):
json_renderer = JSON()
json_renderer.add_adapter(datetime, datetime_adapter)
json_renderer.add_adapter(date, datetime_adapter)
json_renderer.add_adapter(time, datetime_adapter)
config.add_renderer("json", json_renderer)
config.include(".routes")
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment