From 9857e341b2ec9c972d3bb9a6b37458da0354dcdb Mon Sep 17 00:00:00 2001 From: Luan Date: Mon, 2 Dec 2013 13:49:06 -0200 Subject: [PATCH] moving modified_by to base indexes --- src/proxy/search_indexes.py | 16 ---------------- src/search/base_indexes.py | 32 +++++++++++++++++++++++--------- src/super_archives/search_indexes.py | 2 -- 3 files changed, 23 insertions(+), 27 deletions(-) diff --git a/src/proxy/search_indexes.py b/src/proxy/search_indexes.py index c4d694a..c7c413f 100644 --- a/src/proxy/search_indexes.py +++ b/src/proxy/search_indexes.py @@ -78,8 +78,6 @@ class AttachmentIndex(BaseIndex, indexes.Indexable): class WikiIndex(BaseIndex, indexes.Indexable): title = indexes.CharField(model_attr='name') - modified_by = indexes.CharField(model_attr='modified_by', null=True) - modified_by_url = indexes.CharField(null=True) collaborators = indexes.CharField( model_attr='collaborators', null=True, @@ -92,12 +90,6 @@ class WikiIndex(BaseIndex, indexes.Indexable): def prepare_description(self, obj): return u'{}\n{}'.format(obj.wiki_text, obj.collaborators) - def prepare_modified_by_url(self, obj): - modified_by = obj.get_modified_by() - if modified_by: - return modified_by.get_absolute_url() - return None - def prepare_icon_name(self, obj): return u'book' @@ -112,8 +104,6 @@ class TicketIndex(BaseIndex, indexes.Indexable): severity = indexes.CharField(model_attr='severity', null=True) reporter = indexes.CharField(model_attr='reporter', null=True) keywords = indexes.CharField(model_attr='keywords', null=True) - modified_by = indexes.CharField(model_attr='modified_by', null=True) - modified_by_url = indexes.CharField(null=True) collaborators = indexes.CharField( model_attr='collaborators', null=True, @@ -129,12 +119,6 @@ class TicketIndex(BaseIndex, indexes.Indexable): obj.reporter, obj.keywords, obj.collaborators ) - def prepare_modified_by_url(self, obj): - modified_by = obj.get_modified_by() - if modified_by: - return modified_by.get_absolute_url() - return None - def prepare_icon_name(self, obj): return u'tag' diff --git a/src/search/base_indexes.py b/src/search/base_indexes.py index 3419ae9..4fed1ae 100644 --- a/src/search/base_indexes.py +++ b/src/search/base_indexes.py @@ -19,6 +19,8 @@ class BaseIndex(indexes.SearchIndex): icon_name = indexes.CharField(indexed=False) fullname_and_username = indexes.CharField(null=True, stored=False) hits = indexes.IntegerField(model_attr='hits') + modified_by = indexes.CharField(null=True) + modified_by_url = indexes.CharField(null=True) def get_updated_field(self): return 'modified' @@ -40,15 +42,6 @@ class BaseIndex(indexes.SearchIndex): return author.username return obj.author - def prepare_fullname_and_username(self, obj): - author = obj.get_author() - if not author: - return obj.author - return u'{}\n{}'.format( - author.get_full_name(), - author.username, - ) - def prepare_author_url(self, obj): author = obj.get_author() if author: @@ -66,3 +59,24 @@ class BaseIndex(indexes.SearchIndex): if author: return author.get_full_name() return obj.author + + def prepare_fullname_and_username(self, obj): + author = obj.get_author() + if not author: + return obj.author + return u'{}\n{}'.format( + author.get_full_name(), + author.username, + ) + + def prepare_modified_by(self, obj): + if hasattr(obj, 'modified_by'): + return obj.modified_by + return None + + def prepare_modified_by_url(self, obj): + if hasattr(obj, 'modified_by'): + modified_by = obj.get_modified_by() + if modified_by: + return modified_by.get_absolute_url() + return None diff --git a/src/super_archives/search_indexes.py b/src/super_archives/search_indexes.py index 7e7d40b..94124b3 100644 --- a/src/super_archives/search_indexes.py +++ b/src/super_archives/search_indexes.py @@ -19,8 +19,6 @@ class ThreadIndex(BaseIndex, indexes.Indexable): modified = indexes.DateTimeField( model_attr='latest_message__modified' ) - modified_by = indexes.CharField(null=True) - modified_by_url = indexes.CharField(null=True) tag = indexes.CharField(model_attr='mailinglist__name') collaborators = indexes.CharField(use_template=True, stored=False) mailinglist_url = indexes.CharField( -- libgit2 0.21.2