【发布时间】:2017-12-04 03:52:16
【问题描述】:
我是 Django 的新手。我正在使用数据表 (https://datatables.net/) 来填充我的数据。任何人都可以就我应该在我的代码中更改的内容提供一些建议吗?我在数据库中有数据,但我不知道为什么数据没有显示在表中。
views.py
from django.core import serializers
def ltimesheet(request):
json_serializer = serializers.get_serializer("json")()
query_results = json_serializer.serialize( Timesheet.objects.all(), ensure_ascii=False )
data={'query_results':query_results}
return render(request, 'hrfinance/list_timesheet.html', data)
这就是我的脚本的样子
var dataSet = '{{ query_results|escapejs }}';
/*create the table*/
$(document).ready(function() {
var table = $('#example').DataTable( {
data: dataSet,
columns: [
{ title: "Student ID" },
{ title: "Student Name" },
{ title: "Start Date" },
{ title: "End Date" }
]
} );
【问题讨论】:
-
你确定
dataSet不为空吗? -
为什么结果用引号括起来?你的脚本在哪里?
-
@NabIlovich 如何检查我的数据集是否为空?因为我试图在我的模板中打印 {{query_results}} 并且它显示其中有数据
-
首先,确保将数据传递给 html。第二个:你必须使用相同的名称(views.py中的名称是数据所以它应该是html - js中的数据)
-
@Nobody 据我所知。从服务器传递到 HTML 的数据是普通数据(不是 Json)。因此,您可以立即使用它并在 html 中显示。但是在数据表的情况下。数据应该是 Json,所以只要确保你给它正确的数据类型
标签: javascript python django database