2009-05-21 50 views
0

我遇到了跟​​随问题。我错过了什么吗?带字符串的过滤器没有任何返回

Association.all().count() 
1 

Association.all().fetch(1) 
[Association(**{'server_url': u'server-url', 'handle': u'handle2', 'secret': 'c2VjcmV0\n', 'issued': 1242892477L, 'lifetime': 200L, 'assoc_type': u'HMAC-SHA1'})] 

Association.all().filter('server_url =', 'server-url').count() 
0 # expect 1 

Association.all().filter('server_url =', u'server-url').count() 
0 # expect 1 

Association.all().filter('issued >', 0).count() 
1 
+0

不知道GAE,但应在 “=” 是 “==” 呢? – user49117 2009-05-21 10:37:25

回答

5

什么样的属性是“server_url”?

如果它是一个TextProperty,那么它不能在过滤器中使用。

与StringProperty不同,TextProperty 值的长度可能超过500个字节。 但是,TextProperty值不是 已编制索引,并且不能用于筛选器 或排序顺序。

http://code.google.com/appengine/docs/python/datastore/typesandpropertyclasses.html#TextProperty

+0

用户在官方论坛上发布了相同的内容;这是解决方案。 – 2009-05-21 19:01:02