vue-storefront-1
vue-storefront-1 copied to clipboard
Searching with wildcard
What is the motivation for adding / enhancing this feature?
Let's imagine we have products like:
flame
flamingo
After I type: flam in the search I am receiving only: flame.
I want both. So I should use something like *flam*. However, multi_match does not support wildcards. So, I've used query_string instead of that as it allows wildcards. But according to that: https://stackoverflow.com/questions/16933800/elasticsearch-how-to-use-multi-match-with-wildcard
query_string is a slow solution. It would be better to use nGram Filter while indexing.
What are the acceptance criteria
- [ ] Use query_string instead of multi_match for search with wildcards at the beginning and the end
- [ ] Prepare nGram filter PoC for better search
- [ ] Prepare nGram filter for Indexer
Can you complete this feature request by yourself?
- [ ] YES
- [x] NO
Which Release Cycle state this refers to? Info for developer.
Pick one option.
- [x] This is a normal feature request. This should be available on https://test.storefrontcloud.io and then after tests this can be added to next Vue Storefront version. In this case Developer should create branch from
developbranch and create Pull Request2. Feature / Improvementback todevelop. - [ ] (Pick this option only if you're sure) This is an important improvement request for current Release Candidate version on https://next.storefrontcloud.io and should be placed in next RC version. In this case Developer should create branch from
releasebranch and create Pull Request3. Stabilisation fixback torelease. - [ ] (Pick this option only if you're sure) This is a critical improvement request for current Stable version on https://demo.storefrontcloud.io and should be placed in next stable version. In this case Developer should create branch from
hotfixormasterbranch and create Pull Request4. Hotfixback tohotfix.
@Fifciu Can you explain how you went about getting the search to use query_string? Looking to set this up but not sure where to start.