Ich versuche eine djapian basierte Volltextsuche für die Suche nach Benutzer Profile in meiner Django-Site zu implementieren. Ich folgte im Wesentlichen die folgenden Schritte, um die Indizes zu erstellen:djapian basierte Suche gibt kein Ergebnis zurück
- das Modell Profil der djapian Indexer hinzuzufügen aktualisiert.
- Lief
python manage.py index --rebuild
, um die Indizes neu zu erstellen.
aber wenn ich versuche, mit mit dem Profil Indexer suchen: Profile.indexer.search("query")
es mir nicht gibt keine Ergebnisse. Ich erhalte keine Fehler.
Kann mir jemand dabei helfen? Ich bin ein Neuling w.r.t. django + djapian.
--- aktualisieren 06/29/09
Meine Indexer Definition lebt in models.py und ist wie folgt:
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')
Es ist möglich,
Bitte geben Sie Ihre Indexer Definition zu uns und sagen, wo lebt es in Code. –
Danke für die Antwort Alex. Ich habe meinen Beitrag aktualisiert, um Ihre Frage zu beantworten. – kartikq