changeset 221:8d13baeaa5c1

#51; add downloads to Haystack search.
author Brian Neal <bgneal@gmail.com>
date Sun, 06 Jun 2010 20:19:10 +0000
parents 71fd8454688b
children a5fcf3d1b663
files gpp/downloads/models.py gpp/downloads/search_indexes.py gpp/templates/search/indexes/downloads/download_text.txt
diffstat 3 files changed, 27 insertions(+), 0 deletions(-) [+]
line wrap: on
line diff
--- a/gpp/downloads/models.py	Sun Jun 06 20:06:15 2010 +0000
+++ b/gpp/downloads/models.py	Sun Jun 06 20:19:10 2010 +0000
@@ -113,6 +113,12 @@
         self.average_score = total_score / self.total_votes
         return self.average_score
 
+    def search_title(self):
+        return self.title
+
+    def search_summary(self):
+        return self.description
+
 
 class AllowedExtensionManager(models.Manager):
     def get_extension_list(self):
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/gpp/downloads/search_indexes.py	Sun Jun 06 20:19:10 2010 +0000
@@ -0,0 +1,17 @@
+"""Haystack search index for the downloads application."""
+from haystack.indexes import *
+from haystack import site
+
+from downloads.models import Download
+
+
+class DownloadIndex(SearchIndex):
+    text = CharField(document=True, use_template=True)
+    author = CharField(model_attr='user')
+    pub_date = DateTimeField(model_attr='date_added')
+
+    def get_queryset(self):
+        return Download.public_objects.all()
+
+
+site.register(Download, DownloadIndex)
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/gpp/templates/search/indexes/downloads/download_text.txt	Sun Jun 06 20:19:10 2010 +0000
@@ -0,0 +1,4 @@
+{{ object.title }}
+{{ object.user.username }}
+{{ object.user.get_full_name }}
+{{ object.description }}