【发布时间】:2014-11-16 11:29:06
【问题描述】:
可能我还不明白 urls.py 是如何工作的……但我不知道如何使用数据表的“bServerSide”加载数据……我认为我的 urls.py 有问题.我使用 Django,datatables.js,这是我的代码:
main.html
<table cellpadding="0" cellspacing="0" border="0" id="example1">
<thead>
<tr><th>Name</th></tr>
</thead>
<tbody></tbody>
</table>
<script type="text/javascript" language="javascript" class="init">
$(document).ready(function() {
$('#example1').dataTable( {
"bServerSide": true,
"sAjaxSource": "main.html/getdata_json",
"bProcessing": true,
} );
} );
</script>
views.py
def myajaxview(request):
report = []
start = request.GET['iDisplayStart']
length = request.GET['iDisplayLength']
query = name.objects.all() #or any kind of queryset
query = query[start:start+length]
for q in query:
report.append(json.dumps(q.nome_struttura))
json = json.dumps(report)
return HttpResponse(json, content_type='application/json')
urls.py
urlpatterns = i18n_patterns('',
...
url(r'^getdata_json$', 'views.myajaxview'),
...
我不知道错误在哪里。你能帮我吗?
【问题讨论】:
-
为什么你的 sAjaxSource 值中有“main.html”?
-
因为如果我不在 sAjaxSource 中放入“main.html”,我会得到“找不到页面 (404)”。
标签: jquery python ajax django datatable