Web2Py使用db().count()的变量

2024-04-18 17:40:57 发布

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

好吧,这应该是一个简单的问题,我想,但无法解决它。在

我将表单数据传递给控制器,并尝试在那里进行数据搜索,然后由控制器运行这个。。在

def initLogin():
    userName = request.vars.user_name;
    counter = db(db.Users.UserName == userName).count()
    if counter > 0:
        return DIV("User exists")

return DIV("user does not exist")

我通过返回userName而不是string来检查值是否正确传递(也就是说),这表明它是正确的值,当我有一个正确用户名的直接字符串时,它似乎可以工作。所以我的问题是。。如何使用变量对web2py数据库正确运行count()函数?在


Tags: 数据namediv表单dbreturnrequestdef
1条回答
网友
1楼 · 发布于 2024-04-18 17:40:57

您的代码是正确的,不应该给您带来任何问题,唯一可能的问题应该是您的userName变量不是您所期望的,或者是一个不正确的sql查询。我建议您尝试将控制器更改为:

def initLogin():
    userName = request.vars.user_name;
    counter = db(db.Users.UserName == userName).count()
    lastExecutedQuery = db._lastsql

    return DIV( lastExecutedQuery )

并检查正在执行的查询是否与您期望的一样。在

相关问题 更多 >