2013-05-05 4 views
0

J'ai un problème de conception dans django-haystack que je ne sais pas comment résoudre. Dans mon modèle django, il y a un certain nombre de champs de texte que je veux index. Pour autant que je sache de la documentation officielle haystack, la seule façon d'indexer le contenu est de fusionner tout ce que vous voulez indexer dans un seul modèle. Le problème ici est que je veux maintenir un index par champ, c'est-à-dire que je veux faire une recherche de texte intégral sur chaque champ séparément ou sur un ensemble de champs.Apache solr indexation de champs multiples avec django haystack

Y a-t-il un moyen de le faire?

Répondre

0

Vous devriez simplement pouvoir créer des CharField supplémentaires? La première page de tutoriel donne un exemple: http://django-haystack.readthedocs.org/en/latest/tutorial.html#handling-data pour l'auteur du champ.

+0

Malheureusement, ce n'est pas mon cas. Les autres '' CharFields'' sont juste pour facettes (comme appeler '' .objects.filter() '' à travers django), et un seul champ peut être '' document = True'', qui est un vrai index. – dragoon

+0

Ou permettent-ils vraiment un index par champ? Pourriez-vous s'il vous plaît donner un exemple d'un exemple de requête de recherche? – dragoon

+0

Il existe des exemples d'interrogation de plusieurs champs ici: http://django-haystack.readthedocs.org/en/latest/searchqueryset_api.html#filter L'idée de base est de passer plusieurs paires de champs/valeurs à QuerySet.filter(). Tous les champs sont indexés (sauf si vous avez explicitement spécifié un champ stocké/non indexé). –

Questions connexes