Q1.json は機能しています (index.json)。しかし、jqgridに表示できません。colModel名が問題だと思います.colModel名がデータベースフィールドからのものである必要がありますか? jqgrid に表示したいのは、select ステートメントからのものであり、それらの変数は別のテーブルからのものです。1テーブルだけでなく、3テーブル。
Q2.jqgridで同じ行が表示されるはずなのに、別のテーブルから。出来ますか?
<script type="text/javascript">
jQuery(document).ready(function(){
jQuery("#list").jqGrid({
url:'{{=URL(r=request,f='call',args=['json','index'])}}',
data: "{}",
datatype: 'json',
mtype: 'GET',
contentType: "application/json; charset=utf-8",
complete: function(jsondata, stat) {
if (stat == "success") {
var thegrid = jQuery("#list")[0];
thegrid.addJSONData(JSON.parse(jsondata.responseText).d);
}
},
colNames:['code','name','max','min','quantity','amount'],
colModel :[
{name:CODE',index:'CODE', width:55},
{name:'Name', index:'Name',width:100},
{name:'MAX(table2.hour)', index:'MAX(hour)',width:100},
{name:'MIN(tabl2.hour)', index:'MIN(hour)',width:100},
{name:'SUM(quantity)', index:'SUM(quantity)',width:180},
{name:'SUM(amount)', index:'SUM(amount)',width:180}
],
hidegrid: false,
scrollOffset:0,
pager: '#pager',
rowNum:100,
shrinkToFit:false,
//rowList:[10,20,30,50],
//sortname: 'id',
//sortorder: 'desc',
viewrecords: false,
width: "100%",
height: "100%",
caption: 'SALES Grid'
});
});
</script>
{"rows": [0, {"table1": {"Name": "dyon"}, "_extra": {"MAX(table2.hour)": "20130514214301484", "MIN(table2.hour)": "20130514052610093"、"SUM(table2.数量)": 2115.854、"SUM(table2.金額)": 90089.15}、"table3": {"コード": 1800}}]}
注:データを1ページのみに表示したい.index.htmlを実行すると行が含まれますが、空白で、行にはセルごとに0が含まれます.index.jsonを実行すると、必要なデータが含まれます. Pythonの初心者です。ありがとう!