Попытка впервые создать веб-приложение, используя Django. Пользовательский интерфейс таблицы из приведенного ниже сценария выполняет рендеринг данных впервые. Но, похоже, что вызов Ajax не вызывает get_more_tables в views.py и обновляет данные таблицы.
Я уже посмотрел, но не помог мой случай Перезагрузка данных таблицы в Django без обновления страницы
home.html
{% extends "templates_dashboard/base.html" %}
{% block content %}
<head>
<script src="https://code.jquery.com/jquery-3.2.1.min.js" type="text/javascript"></script> <!-- ADD THE CLOSING TAG HERE TOO! -->
</head>
<td class="more-padding-on-right">CURRENT RESPONSE TIME OF WEBSITES</td>
<table id="_response_time" class="table table-striped table-condensed">
<tr>
<th>Website</th>
<th>Current Response Time(ms)</th>
</tr>
{% for posts in posts2 %}
<td>{{ posts.website }}</td>
<td>{{ posts.response_time}}</td>
</tr>
{% endfor %}
</table>
<script> // <-- ADD THIS!
$(document).ready(function () {
var append_increment = 0;
setInterval(function() {
$.ajax({
type: "GET",
url: "{% url 'get_more_tables' %}",
data: {'append_increment': append_increment}
})
.done(function(response) {
$('#_response_time').append(response);
append_increment += 10;
});
}, 10000)
})
</script>
{% endblock content %}
get_more_tables.html
{% load static %}
{% for post in posts %}
<tr>
<td>{{ post.website}}</td>
<td>{{ post.response_time }}</td>
</tr>
{% endfor %}
urls.py
urlpatterns = [
path('', views.home , name='dashboard-home'),
path('about/',views.about, name='dashboard-about'),
path('get_more_tables', views.get_more_tables , name='get_more_tables'),
]
views.py
def get_more_tables(request):
logger.info('************************************************** Refreshing Table Content')
increment = int(request.GET['append_increment'])
increment_to = increment + 10
my_response = responseTime()
return render(request, 'templates_dashboard/get_more_tables.html', {'posts': my_response[increment:increment_to]})
Я ожидаю, что данные таблицы для веб-сайта и время отклика будут обновляться каждые 10 секунд, печатая сообщение регистратора в get_more_tables. Я не вижу обновления данных таблицы или сообщения журнала в журналах, что заставило меня думать, что функция get_more_tables не вызывается. Может кто-нибудь помочь мне понять, почему функция get_more_tables в views.py не вызывается?