我的模型表示为
class Suggestion(db.Model):
text = db.TextProperty()
votes = db.IntegerProperty()
time_added = db.DateTimeProperty(auto_now_add=True)
time_modified = db.DateTimeProperty(auto_now=True)
我添加了一个建议
suggestion = Suggestion(text='Adding Suggestion', votes=1)
suggestion.put()
我看到该值已插入,现在我想通过查询text属性来获取此建议。我做了以下
from models import Suggestion
suggestion = Suggestion.all().filter('text = ', 'Adding Suggestion').fetch(1)[0]
print suggestion
结果为空。如何使此查询有效?
谢谢
答案 0 :(得分:3)
这是由于text属性无法在过滤器中使用。 http://code.google.com/appengine/docs/python/datastore/typesandpropertyclasses.html#TextProperty
与StringProperty不同,TextProperty值可以超过500 长字符。但是,TextProperty值未编入索引,并且 不能用于过滤器或排序订单
有一些替代方法可以这样做。
全文功能是由谷歌应用引擎团队开发的: https://developers.google.com/appengine/docs/python/search/overview