2017-10-03 10 views
0

Comment empêcher une requête de filtre tel que ss_content: 70756_box4_v29.jpg d'être analysés comme ci-dessousNom de fichier s'analysé de manière incorrecte dans la requête de filtre dans Solr 6.6

"filter_queries":["ss_content:(41339_box4_v29.jpg)"], 
"parsed_filter_queries":["ss_content:41339_box4_v29 ss_content:jpg"] 

dans les parsed_filter_queries le nom de fichier a été coupé en deux séparé question. Même si j'essaie d'inclure les noms de fichiers entre guillemets doubles, il coupe toujours le nom de fichier en 2 parties.

"filter_queries":["ss_content:\\\"70756_box4_v29.jpg\\\""], 
"parsed_filter_queries":["ss_content:70756_box4_v29 ss_content:jpg"], 

Cela provoque la requête pour afficher des résultats incorrects que le champ ss_content est un champ de mots-clés

par exemple

"ss_content":"628_test.jpg none facets media image file type jpg type packaging graphics packaging generic year 1996 " 

Répondre

1

vous devez modifier le tokenizer le champ ss_content utilise. En ce moment, il est tokenizing sur le point, créant ainsi deux termes à interroger. Définissez la chaine d'analyse pour utiliser le WhitespaceTokenizer par exemple (mieux étudier attentivement quelle est la meilleure correspondance pour votre cas d'utilisation).

+0

merci. en utilisant le WhiteSpaceTokenizer a fait l'affaire. –