我是 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" }
]
} );
最佳答案
django.core.serializers
会将您的模型序列化为以下结构:
[
{
"pk": "4b678b301dfd8a4e0dad910de3ae245b",
"model": "yourapp.Timesheet",
"fields": {
"student_name": "Joe",
...
}
}
]
你可以这样做:
- 在模板中,迭代序列化程序返回的 json
- 在 View 中,手动序列化您的模型
- 使用
djangorestframework
序列化器,尽管它可能太多了
关于javascript - 使用 Javascript Django 从数据库中的值中检索数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44842182/