Ответ 1
Это решило мою проблему.
import json
from django.core.serializers.json import DjangoJSONEncoder
data = json.dumps(data, cls=DjangoJSONEncoder)
Привет, как получить DateTimeField из базы данных mysql в django в json формате. Я получил ошибку, когда я выполнил код "Date.time не может быть сериализован в json" (данные содержат много значений)
data = json.dumps(data)
но это было исправлено добавлением
ALL_data = serializers.serialize("json", data, ensure_ascii=False)
Но теперь я получаю объект 'str' не имеет атрибута '_meta'
Это решило мою проблему.
import json
from django.core.serializers.json import DjangoJSONEncoder
data = json.dumps(data, cls=DjangoJSONEncoder)
Сериализаторы Django предназначены только для использования в наборах запросов; вам придется найти другой способ решить вашу проблему, например, сначала преобразовать datetime
в нечто другое.
Всякий раз, когда вы видите сообщение об ошибке формы ... object has no attribute '_meta'
, это четкий знак того, что метод ожидал набор запросов, но получил что-то еще. В этой конкретной ситуации serializers.serialize должен иметь набор запросов для своего второго аргумента. Вы не можете использовать список, словарь и т.д., И определенно не строку.
Где установлено data
. Убедитесь, что ему задан правильный запрос. Вы также можете отправить больше своего кода, если у вас все еще есть проблемы. Трудно диагностировать проблему гораздо больше, вне контекста.