Nie musisz.
Interfejs API wyszukiwania musi przeszukać "dokumenty", które zostały utworzone, a nie modele z magazynu danych.
- dokumenty Zbuduj strukturę z polami do opisu danych, które chcesz szukać
- Tworzenie indeksu dokumentów, które chcesz wyszukać
- Construct zapytań do wyszukiwania indeksu
- żądań wyszukiwania budowy do uruchamiania kwerend w odniesieniu do dokumentów w aplikacji Wyniki wyników i dostosuj swoją prezentację do użytkownika
Będziesz musiał napisać konwerter, który ładuje dane z twoich modeli i tworzy przeszukiwalne dokumenty, które następnie można umieścić w indeksie.
E.G. od dokumentów do utworzenia dokumentu:
from google.appengine.api import search
search.Document(
doc_id='document id',
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')
Ten dokument ma 3 oddzielne pola, które można przeszukiwać pojedynczo.
The Document Class
Dzięki. Więc klasa Dokument jest nowym sposobem na przechowywanie danych? Czy jest jakaś zaleta lub wada korzystania z dokumentów zamiast db.Model (oczywiście oprócz Search API)? Dokumenty są przechowywane przy użyciu BigTable? – gather
Są to zupełnie różne rzeczy. Nie chodzi więc o zalety i wady, chodzi o to, co trzeba zrobić i która opcja na to pozwala. Nie ma znaczenia, jak twoje dane źródłowe są obecnie przechowywane, nadal musisz napisać mechanizm, który przekształci go w dokumenty do przeszukiwania. –