Field Classes

Class Field is an abstract base class representing a field of a document. This class should not be directly instantiated; instead, use one of the subclasses representing specific data types.

Field is defined in the module google.appengine.api.search .

Properties

An instance of class Field has the following properties:

name

Name of the field. Must begin with a letter, contain only letters, digits, and underscores ( _ ), and be no longer than 500 characters.

language

Two-letter ISO 693-1 language code for the field's content, to assist in tokenization. For example, en signifies that the field is English. If None , the language code of the document will be used.

value

Value of the field. Data type varies depending on the specific subclass.

Subclasses

Class Field has the following subclasses:

class TextField

A field containing text.

The field's value must be a string or Unicode string. The following example shows a text field named signature with Polish language content:

TextField(name='signature', value='brzydka pogoda', language='pl')

Exceptions

TypeError

Value supplied is not a text string.

ValueError

Value exceeds maximum allowable length.

class HtmlField

A field containing HTML content.

The field's value must be a string or Unicode string containing the searchable content of the field. The following example shows an HTML field named content :

HtmlField(name='content', value='<html>herbata, kawa</html>', language='pl')

Exceptions

TypeError

Value supplied is not a text string.

ValueError

Value exceeds maximum allowable length.

class AtomField

A field containing text to be treated as an indivisible (atomic) token for indexing purposes.

The field's value must be a string or Unicode object to be treated as an atomic token. The following example shows an atom field named contributor :

AtomField(name='contributor', value='foo@bar.com')

Exceptions

TypeError

Value supplied is not a text string.

ValueError

Value exceeds maximum allowable length.

class NumberField

A field containing a numeric value.

The field's value must be numeric. The following example shows a number field named size with integer value 10:

NumberField(name='size', value=10)

Exception

TypeError

Value supplied is not numeric.

class DateField

A field containing a date or datetime value.

The field's value must be of type datetime.date , or datetime.datetime . Only Python "naive" date and time objects can be used. "Aware" objects are not allowed. The following example shows a date field named creation_date representing the date 21 March 2011:

DateField(name='creation_date', value=datetime.date(2011, 03, 21))

Exception

TypeError

Value supplied is not a datetime.date or a datetime.datetime .

class GeoField

A field containing a GeoPoint value.

The following example shows a GeoField named place representing a location at -33.84 degrees latitude and 151.26 degrees longitude:

GeoField(name='place', value=GeoPoint(latitude=-33.84, longitude=151.26))

Exception

TypeError

Value supplied is not a GeoPoint .

Create a Mobile Website
View Site in Mobile | Classic
Share by: