我有一些麻煩讓這個Ajax調用工作。 ajax函數傳遞一個簡單的變量給我的python控制器,控制器返回查詢結果。我正在使用Web2py框架。我得到的錯誤:不能連接'str'和'NoneType'對象。這是代碼:Web2py - 不能連接'str'和'NoneType'對象
AJAX調用:
<script>
function TestVolumen() {
var selectVal = $('#zonas :selected').val();
$.ajax({
data: selectVal ,
url: '/shell/default/ajax2',
type: 'POST',
cache: false,
dataType: 'string',
success: function(request) {
//console.log(request[0]);
//console.log(request[0].zona);
selectVal = $('#zonas :selected').val();
for (x=0;x<request.length;x++){
if (request[x].zona == selectVal) {
//alert(request[x].promedio);
//alert(request[x].zona);
$('div#tabs .vol').html(request[x].promedio.toFixed(4));
}
}
}
});
}
</script>
,這是蟒蛇控制器:
def ajax2():
import gluon.contrib.simplejson
zona = request.vars
queryvol = "select sells.product1 FROM site inner join zona on site.zone_number = zona.id inner join sells on sells.site = site.id WHERE zona.id =" + zona +" ;', as_dict = True"
vol=db.executesql(queryvol)
return gluon.contrib.simplejson.dumps(vol)
感謝您的幫助!對此,我真的非常感激。
python或js正在產生該錯誤? – BostonJohn
Python正在生成一個錯誤,變量類型爲None,這就是爲什麼它不能連接。在將它插入sql查詢之前,請打印變量的類型,然後鍵入cast或將其作爲字符串傳遞。 – ronak