Document
類別代表的是包含可搜尋內容的文件。
Document
應在 google.appengine.api.search
模組中定義。
建構函式
Document
類別的建構函式定義如下:
- class Document(doc_id=None, fields=None, language='en', rank=None)
建構
Document
類別的例項。以下範例顯示如何建立包含一組欄位的文件,這些欄位有些為純文字內容,有一個為 HTML 內容:
from google.appengine.api import search search.Document( doc_id='documentId', fields=[search.TextField(name='subject', value='going for dinner'), search.HtmlField(name='body', value='<html>I found a place.</html>'), search.TextField(name='signature', value='brzydka pogoda', language='pl')], language='en')
引數
- doc_id
「文件識別碼」,為使用者可判讀的 ASCII 字串,用於識別文件。不得包含空白字元,且開頭不得為驚嘆號 (
!
)。如果省略,搜尋服務會提供 ID 字串。在大多數情況下,您不需要明確指定文件識別碼,但在實作其他儲存機制 (例如 Blobstore 或 Google Storage) 的搜尋功能時,指定自訂識別碼會很實用。以 Blobstore 為例,您可以將文件 ID 設為
BlobKey
,建立該文件與特定 blob 的關聯。- 欄位
可迭代的
Field
物件集合,代表文件內容。- language
雙字母格式的 ISO 693-1 語言編碼,用於表示文件欄位值使用的語言。
- rank
文件的「排名」,以整數表示,用於指定在搜尋結果中的傳回順序。較新的文件會較先傳回。如果未指定,系統會將排名設為自 2011 年 1 月 1 日 00:00:00 世界標準時間起的秒數。請注意,在 FieldExpression 或 SortExpression 中使用排名時,會以
_rank
表示。
結果值
Document
類別的新例項。
例外狀況
- TypeError
參數有無效的類型,或傳送了未知的屬性。
- ValueError
參數含有無效的值。
屬性
Document
類別的執行個體具有下列屬性:
- doc_id
「文件識別碼」,為使用者可判讀的 ASCII 字串,用於識別文件。
- 欄位
文件的欄位清單。
- language
雙字母格式的 ISO 693-1 語言編碼,用於表示文件欄位值使用的語言。
- rank
文件的排名,也就是在搜尋結果中傳回的順序,以整數表示。請注意,在 FieldExpression 或 SortExpression 中使用排名時,會以
_rank
表示。此外,如果您建立的 SortExpression 將 rank 納入排序索引鍵,則 rank 僅能以「遞減」方向排序。