Skip to content

Conversation

@xzachtli
Copy link
Contributor

Simplify query and index calls further by moving parameters into specifications object
Allow text querying by setting specifications.query
Allow for complex AND/OR queries

Added tests to verify query build operation

Fix 0 skipped results on statistics object

Allow text querying by setting specifications.query
Allow for complex AND/OR queries
Fix statistics: 0 skipped results
adhere to new internal _request handlers format
simplify "masks"
@xzachtli
Copy link
Contributor Author

Further clarification:

Objects are AND-ed together and array sets are OR-ed

parameters = { name: 'steve', age: 15 } => (name:(steve) AND age:(15))

If all members of an array are objects, the original object key pointing to the array is ignored ("_or" in this case)

parameters = { _or: [ { name: 'steve' }, { age: 15 } ] } => (name:(steve) OR age:(15))

If some members of an array are not objects, the original object key is used for the filter for these items.

parameters = { name: [ 'steve', 'john', {age: 15 } ] } => (name:(steve) OR name:(john) OR age:(15))

Following these rules, you can nest objects and arrays to create complex queries.

xzachtli added 4 commits May 3, 2012 08:22
Prevent cached Rexex from starting the search at the previous location
in the string
provide return value for save to determine if there was anything batched
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant