Web   ·   Wiki   ·   Activities   ·   Blog   ·   Lists   ·   Chat   ·   Meeting   ·   Bugs   ·   Git   ·   Translate   ·   Archive   ·   People   ·   Donate
summaryrefslogtreecommitdiffstats
path: root/src/olpc/datastore/xapianindex.py
diff options
context:
space:
mode:
Diffstat (limited to 'src/olpc/datastore/xapianindex.py')
-rw-r--r--src/olpc/datastore/xapianindex.py5
1 files changed, 5 insertions, 0 deletions
diff --git a/src/olpc/datastore/xapianindex.py b/src/olpc/datastore/xapianindex.py
index 3710d68..e650241 100644
--- a/src/olpc/datastore/xapianindex.py
+++ b/src/olpc/datastore/xapianindex.py
@@ -364,6 +364,11 @@ class IndexManager(object):
start = parse_timestamp_or_float(start)
end = parse_timestamp_or_float(end)
queries.append(ri.query_range(k, start, end))
+ elif isinstance(v, list):
+ # construct a set of OR queries
+ ors = []
+ for item in v: ors.append(ri.query_field(k, item))
+ queries.append(ri.query_composite(ri.OP_OR, ors))
else:
queries.append(ri.query_field(k, v))