Используйте переменную JsonResponse от Django в Html до ajax - PullRequest
0 голосов
/ 10 января 2020

Я возвращаю JsonResponse с требуемым представлением ha sh из Django при вызове ajax.

Как использовать объект Json внутри html через {{}} ( Джинджа шаблонизирует). Ниже мой ajax звонок:

$(function () {
        $('#getData').submit(function (e) {
            e.preventDefault();
            $.ajax({
                url: "/Report",
                type: 'get',
                data: {
                    'date1': $('#d1').val(),
                    'date2': $('#d2').val(),

                },
                success: function (data) {
                    alert("Success");
                    // How to pass the data here to use it in html
                }
            });
        });
    });

Мой образец html:

<div id="maindiv" class="col col-5 col-sm-10" style="display: none;">
        <div>
            <h3> Showing Results for {{info.fromDate}} to {{info.toDate}}</h3>
        </div>
        <br><br>
        <div id="summary">
            <div class="card-deck">
                <div class="card mx-auto">
                    <div class="card-body text-center">
                        <p style="text-align: center;vertical-align: middle;padding: 20px;" class="card-text">
                            <h1><b><span style="font-size:80px;">{{info.total}}</span></b></h1>
                            <h6> Total  </h6>                                
                        </p>
                    </div>
                </div>
                <div class="card" id='chart1' style="width: 100%; height: 500px;">
                    <div class="card-body text-center">
                        <script>
                            Info = {{ info.marks| safe }}
                            createpiechart("marks", 'chart1', Info); <!-- This creates an amchart -->
                        </script>
                    </div>
                </div>
            </div>
    </div>

Это всего лишь образец. У меня есть еще много диаграмм и обработки, для которых я использовал переменную jsonresponse через {{}} внутри html. Как правильно получить данные от ajax до html?

Изначально я использовал render для возврата ответа на html. Но я вижу, что данные, которые я собираю в ajax, заменяют все html на значение переменной {{}}

 return render(request=request, template_name='home/home.html', context={"info": InfoArray})

Как использовать хэш / контекст, который я передаю из представления Django внутри html через ajax?

Файл приложения \ home.urls:

urlpatterns = [
#path('', views.index, name = "index"),
path('', views.homepage, name="homepage"),
]

Файл приложения \ urls:

urlpatterns = [
path('Report/', include('home.urls')),
path('admin/', admin.site.urls),
]
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...