2012-09-06 39 views
0

我已經創建了Document,將它添加到Index並使用GAE Search API成功搜索文本。請在下面找到示例代碼。需要幫助,爲GAE搜索API構建代碼Api

search.Document(
    fields=[search.TextField(name='id', value=id), 
      search.TextField(name='search', value=searchT)]) 

options = search.QueryOptions(returned_fields=['id']) 
results = search.Index(name=_D_INDEX_NAME).search(search.Query(searchTxt, options=options)) 

現在我無法理解要實現下面提到的一些示例代碼將非常感激。

要搜索的精確查詢的多變種,使用〜運算符:
〜「汽車」「汽車」和「汽車」
要構建引用特定字段的查詢#搜索,同時使用現場和您的查詢值,由冒號分隔:
領域:價值
字段:「值作爲一個字符串」

+0

你究竟有什麼不明白的? – aschmid00

+0

我正在尋找一些示例代碼,因爲無論我嘗試過沒有工作。最後從@Sebastian知道它不會在dev_appserver中工作(請參閱下面的答案) – ujjalcal

回答

1

當您添加文檔,您可以通過定義文件的字段中指定其架構。在你的情況下idsearch

要搜索僅出現在您使用符號field:term

search.Index(name=_D_INDEX_NAME).search('search:programming') 

用於搜索詞的複數變種但是您使用操作~

search.Index(name=_D_INDEX_NAME).search('~car') 

注意某一特定領域的術語,這在dev_appserver中不起作用。

+0

其實我在dev_appserver中試過了,它沒有工作。但正如你所提到的,我將在appspot.com上再次檢查這一點。感謝您的輸入。也很好奇知道爲什麼它不會在dev_appserver中工作? – ujjalcal

+0

谷歌沒有在其開發服務器上實現Stemming。 https://developers.google.com/appengine/docs/python/search/devserver – Carl