Django HighChart с Api - PullRequest
       0

Django HighChart с Api

0 голосов
/ 20 марта 2020

Я новичок в Django, пожалуйста, помогите мне, я прочитал некоторые статьи vlogs, кажется, я не могу найти правильный код, вот мой код в views.py , и я хочу, чтобы он отображался в HTML index. html и в результате он не будет отображаться. Я не знаю, что не так с моим кодом

from django.shortcuts import render
from django.http import JsonResponse,HttpResponse   
import requests
import pandas as pd
import json 


def home(request):
    response = requests.get('https:api').text

    # li = list(response.split(","))

    res = json.loads(response) 

    maleCount = 0
    femaleCount = 0
    for i in res:
        if i['gender'] == 'M':
            maleCount += 1 
        else:    
            femaleCount += 1
    TotalCount =[
        {
        "name": "MALE",
        "data": [maleCount]},
        {
            "name": "FEMALE",
            "data": [femaleCount]
        }
    ]


    return render(request,'index.html',{'data':TotalCount})

и вот мой код в html в индексе. html tru views.py Это не будет отображать мои данные в html Кажется, мой код не работает, в чем проблема моего кода? пожалуйста помогите спасибо

<!doctype html>
<html lang="en">

  <body>


    <div class="container-fluid">

      <div class="border" id="container" style="min-width: 310px; height: 400px; margin: 0 auto"></div>
      </div>



    <script src="https://code.highcharts.com/highcharts.js"></script>
    <script src="https://code.highcharts.com/modules/exporting.js"></script>
    <script src="https://code.highcharts.com/modules/export-data.js"></script>

    <script>
        Highcharts.chart('container', {

            chart: {
                type: 'column'
            },

            title: {
                text: 'Total fruit consumtion, grouped by gender'
            },

            xAxis: {
                categories: ['asd','asd']
            },

            yAxis: {
                allowDecimals: false,
                min: 0,
                title: {
                    text: 'Number of fruits'
                }
            },

            tooltip: {
                formatter: function () {
                    return '<b>' + this.x + '</b><br/>' +
                        this.series.name + ': ' + this.y + '<br/>' +
                        'Total: ' + this.point.stackTotal;
                }
            },

            plotOptions: {
                column: {
                    stacking: 'normal'
                }
            },

            series: data
        });
      </script>

  </body>
</html>

Что не так с моим кодом?

1 Ответ

0 голосов
/ 20 марта 2020

Если вы хотите использовать контекстные данные внутри html кода, вам нужно заключить это в двойные скобки: series: {{data}}

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...