Как восстановить целые числа из моего файла json.dumps (для отображения в моей javascript-диаграмме) при использовании Django
В моем Django-приложении у меня есть очень базовая модель круговой диаграммы с колонкой name в качестве CharField и колонкой stats в качестве IntegerField. У меня также есть код javascript на моей html-странице, который отображает круговую диаграмму - но я могу заставить ее работать, только если я жестко закодирую значения в виде массива. Я надеялся вместо этого отобразить данные из моей модели/БД как {{ values|safe }}
в форме круговой диаграммы, извлекая значения из json дампов данных моей БД.
Вот что я пробовал, как видно из моего views.py файла:
def metrics(request):
pietitle = serializers.serialize('json', PieChart.objects.all(),fields=('title'))
piestats = serializers.serialize('json', PieChart.objects.all(),fields=('stats'))
piedata=[[pietitle, piestats]]
json_data = json.dumps(piedata)
data_json= json.loads(json_data)
return render(request, "metrics.html", {"values": data_json})
На моей HTML-странице я получаю сообщение "Нет данных", и я уверен, что это потому, что при сериализации поля stats оно преобразуется в строку и не может быть интерпретировано как целые числа.
Не будет ли кто-нибудь любезен помочь? Большое спасибо, заранее.
Убедитесь, что данные имеют правильный формат для круговой диаграммы.
С этой строкой piedata=[[pietitle, piestats]]
, если вы хотите получить доступ к первому титулу, вам придется перейти data_json[0][0][0]
, а для получения первой партии статистики вам придется перейти data_json[0][1][0]
Редактирование:
Если это правильный формат, возможно, вы используете неправильный тип данных для модели PieChart. При преобразовании в JSON целые числа не преобразуются в строки.