J'utilise Haystack pour la recherche et que le résultat résultant de la recherche est retourné ne contenant aucun élément: exécutant reconstrant_index n'aide pas. Si je supprimais l'appel de .models () de la première ligne, le problème disparaît. Je pourrais simplement filtrer aucun élément des résultats, mais je voulais savoir si cela est le comportement prévu? P> J'utilise Django 1.4, Whoosh et Haystack 2.0.0-Beta P> P> P> P> P> P> P> P> P> P> P> P> P> p>
3 Réponses :
J'ai eu ce problème lorsque HAYStacD Index avait des enregistrements sans enregistrements correspondants dans DB. P>
Merci, ce n'est cependant pas le problème. Il s'avère que les valeurs «Aucune» correspondent aux objets utilisateur. Apparemment, la fonction Modèles i> supprime les hits qui ne sont pas du type de modèle droit mais ne laisse aucun type au lieu de les filtrer
Tu ne peux pas dire que ce problème est-il seulement pour "whoosh" backend? Utilise-t-il le moteur Solr le résout?
Donc, il n'y a pas de solution pour whoosh alors?
avait le même problème à utiliser Whoosh, installé Elasticsicsearch et le Aucun code> est parti. P>
Non, ce n'est certainement pas le comportement prévu, et comme je peux le voir, semble être lié à une décision de conception à Whoosh. Et, en décembre 2015, cela semble toujours être un problème, comme on peut le voir Ici . En outre, je peux le reproduire avec ma configuration (Django 1.8.5, Haystack 2.4.1, Whoosh 2.7.0) - C'est pourquoi je suis venu ici. P>
Solution rapide et sale qui a fonctionné pour moi: Définissez un nouveau champ sur votre index (type / modèle / tomate), définissez-le identique pour chaque modèle et filtrer contre cette valeur: P>
au lieu de p>
Je ne sais pas (encore) comment cette balance, mais semble fonctionner correctement. P> .Filter (type = 'my_modelname') code> p>
.Models (myModel) code>. p>
Je ne l'ai pas encore essayé, mais Ce gars suggère d'utiliser SOLR au lieu de whoosh.
Mise à jour: Maintenant, je l'ai essayé et cela fonctionne avec SOLR.
Tout le monde sait que la recherche élastique ou la solution solrienne et performer - mais pour des sites de taille petite à midi, WHOOSH est très ok imho et ne fait pas de difficulté à installer / de configurer (seulement après, haha).
@zimkies utilisez-vous également Solr, maintenant?
@zimkies ayant une réponse deux ans plus tard, vous pourriez l'accepter après deux ans de plus, non? ;-) Au moins, c'est la seule réponse qui résoudra en quelque sorte le problème et ne suggère pas d'installer un backend différent ;-)