Я использую ndb.Model. The Search API имеет следующие классы полей:Google App Engine - с помощью Search API Python со списком полей
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. Зачем использовать текстовый поиск для тегов, thats подходит для запросов хранилища данных. 2, Зачем сцепляться с '|' почему не пробел символ –
Эй, Тим. 1. Я хочу, чтобы пользователь мог ввести одно слово в поле поиска формы и использовать его для поиска по различным полям. Предположим, что он входит в «Карпентер», результаты будут включать «Карпентер» в качестве тега (например, работа) и «Карпентер» в качестве фамилии. 2. Я соединяю трубку, потому что там могут быть два тега типа «Профессиональный читатель». –
Datastore не подходит, если вы хотите выполнять соединения или перекрестки тегов. – moraes