Web2py无法连接“str”和“NoneType”对象

2024-09-26 22:11:46 发布

您现在位置:Python中文网/ 问答频道 /正文

我在让这个ajax调用正常工作时遇到了一些困难。ajax函数向python控制器传递一个简单变量,控制器返回查询结果。我正在使用Web2py框架。im get错误:无法连接“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>

这是python控制器:

^{pr2}$

谢谢你的帮助!!我真的很感激。在


Tags: 函数logrequestscriptajaxfunctionvalalert
2条回答

根据PEP249,请用户绑定变量。在

queryvol = """
    INSERT INTO [TABLENAME] 
    VALUES(%s, %s, %s, %s, %s, %s, %s, %d)
    )""" % (a, b, c, d, e, f, g, h, i)

您看到的Python错误意味着zona的值就是None。我想这是因为您错误地发出了AJAX请求。当发出请求时,您应该以{ 'variable_name' : value }格式定义数据。对于服务器端:注意request.varsgluon.storage.Storage类字典对象。在

所以,要解决这个问题-通过删除dataType: 'string',并将data设置为{ 'zona' : selectedVal }来修改AJAX请求。第二,使用request.vars['zona']在服务器端获取值。第三,在进一步编写Python代码之前,请先熟记一段PEP8!在

相关问题 更多 >

    热门问题