V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
DAOCLOUD
推荐学习书目
Python Cookbook
Using Google App Engine
推荐下载
Latest Google App Engine SDK
其他兼容技术
AppScale
Query.domains
使用 Query.domains 进行批量域名可注册状态查询
Promoted by BeCool
wickila
V2EX  ›  Google App Engine

关于GAE的数据查询问题

  •  
  •   wickila · 2011-08-04 16:19:13 +08:00 · 4657 次点击
    这是一个创建于 5105 天前的主题,其中的信息可能已经有所发展或是发生改变。
    我有一句代码,就是普通的查询数据库:
    def verify_app_key(appkey):
    q = db.GqlQuery('SELECT * FROM AppKey WHERE app_key = :1', appkey)
    数据库里面有那个实体,但是查询出来的q.count()是0
    如果改成这样
    def verify_app_key(appkey):
    q = db.GqlQuery('SELECT * FROM AppKey WHERE app_key = :1', "pEbYtOdcX")
    传进去的参数直接是写死的一个字符串,而不是一个变量。查询出来的结果就是正确的q.count()==1
    请问一下有没有人碰到过这个情况?
    3 条回复    1970-01-01 08:00:00 +08:00
    Weakdancer
        1
    Weakdancer  
       2011-08-04 16:27:42 +08:00
    @wickila

    不知道你是不是在本地测试,本地的数据库可能会有各种奇怪的问题。

    在服务器上就好了。

    另外有可能是编码问题。
    wickila
        2
    wickila  
    OP
       2011-08-04 16:47:35 +08:00
    开始以为是编码问题,试了一下,不是。原因找到了,是因为appkey里面包含了空字符,用appkey.strip()就好了。还是谢谢楼上的了
    wickila
        3
    wickila  
    OP
       2011-08-04 17:58:05 +08:00
    @Weakdancer 不好意思,确实是编码问题,是因为那个参数被编码过,只要解码以后就ok了
    关于   ·   帮助文档   ·   自助推广系统   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2320 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 20ms · UTC 11:08 · PVG 19:08 · LAX 04:08 · JFK 07:08
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.