Jump to: navigation, search

Database Query API

769 bytes added, 19:32, 29 January 2016
The dotted-field path strings are mapped to SQL names by replacing dots with two underscores.
=== Joins ===
The primary_object.get_field(field-name) (and thus can also do joins across primary objects. For example consider this request:
>>> family.get_field("mother_handle.gramps_id", db)
That is, mother_handle is a handle to a Person, but get_field() can get the joined data, if given the database as a second argument.
Thus, this also works:
>>>"Family", ["mother_handle.gramps_id"])
and even more complex queries, such as:
>>>"Family", ["mother_handle.event_ref_list.ref.gramps_id"])
That returns all of the Event gramps_ids for all events for the mother of all families, looking something like:
[{"gramps_id": ["E0001", "E0002"]},
{"gramps_id": "E0003"},
{"gramps_id": ["E0003", "E0001"]},
== Speed Tests ==

Navigation menu