Converts arbitrarily complicated user entered query strings to a haystack query object.
###Usage
from haystack_queryparser import ParseSQ
Also provides or_parser and and_parser which can be directly used with a query
parser = ParseSQ()
sq_object = parser.parse(query)
takes a AND
or OR
operator to use as default optionally.
###Input Input should be a string.This the query.
###Output
Output is a SQ(haystack.query.SQ)
object.
This can be passed to SearchQuerySet.filter
and the query will be applied
###Test To run the test you need to be in the django environment.So you can do something like this:
$ python manage.py shell
>>> import haystack_queryparser.tests as test
>>> tests.main()
test_operators (modules.haystack_queryparser2.tests.SimpleTest) ... ok
test_parse (modules.haystack_queryparser2.tests.SimpleTest) ... ok
test_parse_with_new_default (modules.haystack_queryparser2.tests.SimpleTest) ... ok
----------------------------------------------------------------------
Ran 3 tests in 0.004s
OK