Я пытаюсь сгенерировать jqgrid, который заполняется из фида JSON и выводится из бэкэнда django.
Python, обрабатывающий запрос, выглядит следующим образом:
from django.http import HttpResponse
from django.utils import simplejson
def json_test(request):
results = {'total':'1',
'page':'1',
'records':'2',
'rows':[{'id':'1','field1':'blah','field2':'bleh'},
{'id':'2','field1':'bloo','field2':'blum'}]}
json = simplejson.dumps(results)
return HttpResponse(json, mimetype='application/json')
Итак, http://127.0.0.1:8000/json_test/
возвращает следующее:
{"records": "2", "total": "1", "rows": [{"field2": "bleh", "field1": "blah", "id": "1"}, {"field2": "blum", "field1": "bloo", "id": "2"}], "page": "1"}
Код jquery выглядит следующим образом:
<script type="text/javascript">
jQuery(document).ready(function(){
jQuery("#list").jqGrid({
url:'http://127.0.0.1:8000/json_test/',
datatype: 'json',
mtype: 'GET',
colNames:['field1','field2'],
colModel :[
{name:'field1', width:55},
{name:'field2', width:90},
],
pager: '#pager',
rowNum:10,
rowList:[10,20],
sortname: 'field1',
sortorder: 'desc',
viewrecords: true,
caption: 'Test Grid'
});
});
</script>
При загрузке страницы сетка отображается правильно и кратко отображает «данные загрузки», но затем не отображает строк.
Есть идеи, где я ошибся? Я попытался разобрать это как можно более простое дело, чтобы определить причину.