Serialize datetime to JSON
Solution 1
DjangoJSONEncoder solved my problem.
import json
from django.core.serializers.json import DjangoJSONEncoder
data = json.dumps(data, cls=DjangoJSONEncoder)
Solution 2
Django's serializers are only meant to be used on query sets; you will have to find a different way to solve your problem, such as converting the datetime
to something else first.
Solution 3
Whenever you see an error message of the form ... object has no attribute '_meta'
that is a clear-cut sign that a method was expecting a queryset but got something else. In this particular situation, serializers.serialize must have a queryset for its second argument. You can't use a list, dictionary, etc., and definitely not a string.
Where is data
being set. Check to make sure it's being assigned a true queryset. You might also want to post more of your code, if you're still having issues. It's difficult to diagnose the problem much more, out of context.
Related videos on Youtube
Rakesh
Updated on July 09, 2022Comments
-
Rakesh almost 2 years
How do I get DateTimeField from the Mysql database in Django in JSON format? I got an error when I executed the code
Date.time cannot be serialized in json
(data holds a lot of values):data = json.dumps(data)
But this was fixed by adding
ALL_data = serializers.serialize("json", data, ensure_ascii=False)
But now I get
'str' object has no attribute '_meta'
. -
Vassilis over 6 years