首先,我是Django新手,对AJAX和jQuery非常陌生。我在本地发展。
所以我试图实现一个HTML表,在AJAX的帮助下,每隔X秒动态刷新一次(没有页面刷新),但是我的代码似乎无法正常工作。我已经用过这个问题中提供的例子:https://stackoverflow.com/a/34775420/6724882
(如果我有足够的代表性,我可能会回答这个问题,或者通过聊天寻求帮助,但我还没有这种奢侈感)
我已经试着让它工作了10多个小时,我开始感到无助。我一直在疯狂地搜索网页,但我被各种各样的方法弄得不知所措,而且每个问题和答案似乎都有太多年的历史了,或者只是与我的应用程序无关。在
目前,该表对于第一个查询正常工作,它显示对象Kala,rivinumero=1(英语中的rownumber)。在
所以,我有几个问题。在我是否应该将脚本包含在单独的文件中,而不是包含在
在我的案例中,显示卡拉.html). 如果是,该文件应该是
在static/js文件夹中,还是在其他地方?在
为了让脚本正常工作,我是否需要在某个地方单独包含AJAX/JS?在
我是否明显做错了什么,或者我提供的问题的答案是错误的?在
显示卡拉.html(脚本在同一文件中){% load static %}
{% include 'loginbar.html' %}
{% include 'nav.html' %}
DisplayDisplay
Id | Nimi | Latnimi |
---|
{% for kala in kalat %}
{{kala.rivinro}}{{kala.tuote}}{{kala.latinalainen_nimi}}{% endfor %}
var append_increment = 0;
setInterval(function() {
$.ajax({
type: "GET",
url: {% 'get_more_tables.html' %}, // URL to your view that serves new info
data: {'append_increment': append_increment}
})
.done(function(response) {
$('#_appendHere').append(response);
append_increment += 10;
});
}, 1000)
获取更多_表格.html
^{pr2}$
视图.pyfrom django.shortcuts import render
from adminside.models import Kala
from adminside.models import Liha
from django.contrib.auth.decorators import login_required
# Create your views here.
def index(request):
return HttpResponse("Index")
@login_required
def displaykala(request):
kalat = Kala.objects.filter(rivinro=1)
return render(request, 'displaykala.html', {'kalat': kalat})
@login_required
def get_more_tables(request):
increment = int(request.GET['increment'])
increment_to = increment + 10
kalat = Kala.objects.filter(rivinro=2)[increment:increment_to]
return render(request, 'get_more_tables.html', {'kalat': kalat})
网址.py(一个应用程序内文件夹)urlpatterns = [
url(r'^$', views.index, name='index'),
url(r'^displayk$', views.displaykala, name='displayk'),
url(r'^get_more_tables', views.get_more_tables, name='get_more_tables'),
]
如果代码中有“是的,我试过这样做”之类的愚蠢实验,我很抱歉。在