J'essaie de mettre en œuvre une recherche de texte intégral djapian pour la recherche de profils utilisateur dans mon site django. Je essentiellement suivi les étapes suivantes pour construire les indices :djapian base de recherche ne renvoie aucun résultat
- Mis à jour le profil de modèle pour ajouter le indexeur djapian.
- Ran
python manage.py index --rebuild
pour reconstruire les index.
Cependant lorsque je tente de recherche à l'aide du profil indexeur en utilisant: Profile.indexer.search("query")
il ne me donne pas de résultats. Je ne reçois aucune erreur.
Quelqu'un peut-il m'aider avec ceci? Je suis un débutant w.r.t. django + djapian.
--- Mise à jour 29/06/09
Ma définition indexeur vit dans models.py et est comme suit:
class Profile(models.Model): user = models.ForeignKey(User, unique=True, verbose_name=('user')) name = models.CharField(('name'), max_length=50, null=True, blank=True) about = models.TextField(('about'), null=True, blank=True) institution = models.CharField(('institution'),max_length=100,null=True, blank=True) location = models.CharField(_('location'), max_length=40, null=True, blank=True) website = models.URLField(_('website'), null=True, blank=True, verify_exists=False) def unicode(self): return self.user.username def get_absolute_url(self): return ('profile_detail', None, {'username': self.user.username}) get_absolute_url = models.permalink(get_absolute_url) class Meta: verbose_name = _('profile') verbose_name_plural = _('profiles')
class ProfileIndexer(djapian.Indexer): fields = ['name', 'about', 'institution','location'] tags = [ ('name','name'),('about','about'),('institution','institution'),('location','location')]
djapian.add_index(Profile,ProfileIndexer,attach_as = 'indexer')
S'il vous plaît, donnez-nous votre définition indexeur et dire où vit-il dans le code? –
Merci pour la réponse Alex. J'ai mis à jour mon message pour répondre à votre question. – kartikq