Use unique identifiers for each "tag". Then you can create a document, for example:
doc = search.Document(fields=[ search.TextField(name='tags', value='tag1 tag2 tag3'), ]) search.Index(name='tags').put(doc)
You can even use numbers (ids) as strings:
doc = search.Document(fields=[ search.TextField(name='tags', value='123 456 789'), ])
And a query using the operators as you wish:
index = search.Index(name='tags') results = index.search('tags:(("tag1" AND "tag2") OR ("tag3" AND "tag4"))')
moraes
source share