0
我有一个数据表,我试图在有新数据显示时追加行。我相对缺乏经验,所以我简单地解决了这个问题,并希望编写一个脚本来检查数据库的每秒更新,而不是侦听服务器发送的事件。我试图编写一个Ajax查询来获取数据表中的所有对象,如果它们的第6个值为false(这意味着它们尚未加载),那么它会使用该信息向我的数据表添加一行。我的表是一个Django的web应用,这里是我试图实现代码:使用Ajax更新表格
<script type="text/javascript">
$(document).ready(function(){
var table = $('#example').DataTable();
setInterval(function(){
newrequests = $.ajax({
type: "GET",
url: "/main/newrequests/",
// I tried this and it didn't work
// success: function(data) {
// for(i = 0; i < data.length; i++){
// // check if the request has been loaded
// if(data[i][5] == 0)
// // if not, load and set to loaded
// table.row.add(data[i]).draw;
// data[i][5] == 1;
// }
// }
});
for(i=0; i<newrequests.length; i++){
if (newrequests[i][5] == 0){
table.row.add(newrequests[i]).draw();
newrequests[i][5] = 1;
}
}
}, 1000)
});
</script>
我已经设置了/主/ newrequests视图它只是数据库中的所有对象:
def newrequests(request):
return HttpResponse(Request.objects.all())
当我更新数据库时,数据表不刷新。有谁知道我做错了什么?我觉得这可能是我尝试使用Ajax的方式。
我不知道数据表有这样的功能 - 表示感谢。当我尝试实现它时,它给出了一个错误HTTP 500.我在线查看了几个教程,并且我指出的那个页面的观点是: def newrequests(request): requests = Request.objects.all () data = json.dumps(requests) return HttpResponse(data,content_type ='application/json') 你知道为什么这会返回一个错误而不是重新加载表吗? – hackerman