【发布时间】:2013-05-06 23:42:22
【问题描述】:
我正在使用 ndb.Model。 Search API 具有以下字段类:
TextField : plain text
HtmlField : HTML formatted text
AtomField : a string which is treated as a single token
NumberField : a numeric value (either float or integer)
DateField : a date with no time component
GeoField : a locale based on latitude and longitude
假设我有一个“标签”字段,它是一个列表字段:
tags = ndb.StringProperty(repeated=True)
我应该如何使用search.Document 处理这个字段?
现在我正在将tags 列表变成一个字符串:
t = '|'.join(tags)
然后:
search.TextField(name=cls.TAGS, value=t)
有什么建议吗?
【问题讨论】:
-
几个问题。 1. 为什么使用文本搜索标签,这适合数据存储查询。 2、为什么要用'|'连接为什么不空格字符
-
嘿蒂姆。 1. 我希望用户能够在表单搜索字段中输入一个词,并用它来搜索不同的字段。假设他输入“Carpenter”,结果将包括“Carpenter”作为标签(例如工作)和“Carpenter”作为姓氏。 2. 我正在使用管道连接,因为可能有两个单词标签,例如“专业阅读器”。
-
如果您想执行标签的并集或交集,Datastore 不适合。
标签: python google-app-engine gae-search