database.Table.find()
Syntax
find(q, operator="=", fields="*", key=None)
Description
Returns records from the table that match a given query. By default, returns the record whose id is equal to q. The q parameter can contain an asterisk (*) at the start or at the end as a wildcard character. The key parameter allows you to specify a different field to search in. The operator parameter allows you to specify a different comparison, greater-than or less-than for example. By default, all fields from the record are returned, or you can define a list of field names in the fields parameter. See also the fieldname() command.
Example
Get the record from the pages table whose title field is "introduction":
db = ximport("database")
book = db.connect("book")
r = book.pages.find("introduction", key="title")
for record in r:
print r
>>>(1, u'introduction', u'...', None, 1)
As you can see the returned value is a list of tuple-values, which is easy to unpack:
r = book.pages.find("introduction", key="title")
for id, title, text, image, pagenumber in r:
print title
>>>introduction
Get all the pages whose title starts with the word "chapter":
db = ximport("database")
book = db.connect("book")
r = book.pages.find("chapter *", key="title")