我有一个数据库,我希望在我的Django应用程序中显示为数据表。但是,我在尝试将所需的模型数据解析为支持Ajax的模板时遇到了一些麻烦。
models.py
from django.db import models
class MyModel(models.Model):
someAttr = models.CharField()
def __unicode__(self):
return self.someAttr
views.py
from django.shortcuts import render
from django.core import serializers
from .models import MyModel
def myModel_asJson(request):
object_list = MyModel.objects.all()
json = serializers.serialize('json', object_list)
return render(request, 'template.html', {'json': json})
urls.py
from django.conf.urls import patterns, url
urlpatterns = patterns('myapp.views',
url(regex=r'^$',
view='myModel_asJson',
name='my_ajax_url'),
)
template.html
<table cellpadding="0" cellspacing="0" border="0" id="example">
<thead>
<tr><th>My Attr Heading</th></tr>
</thead>
<tbody></tbody>
</table>
<script type="text/javascript" language="javascript" class="init">
$(document).ready(function() {
$('#example').dataTable( {
"processing": true,
"ajax": {
"processing": true,
"url": "{% url 'my_ajax_url' %}",
"dataSrc": ""
},
"columns": [
{ "data": "fields.someAttr" },
{ "data": "pk" }
]
} );
} );
</script>
当我打开网页时,我遇到了一个错误,说明我的json无效。我已经验证了json实际上是有效的,但数据仍然没有显示在我的数据表中。
我不知道如何解决这个错误。非常感谢任何帮助,我真的想在我的django应用程序中实现ajax和datatables来显示我的模型数据。