]> git.parisson.com Git - telemeta.git/commitdiff
Simplify index and settings
authormathieu <mathieu.boye28@gmail.com>
Thu, 21 Apr 2016 08:49:51 +0000 (10:49 +0200)
committermathieu <mathieu.boye28@gmail.com>
Thu, 21 Apr 2016 08:49:51 +0000 (10:49 +0200)
Former-commit-id: 0e6442202c996e754c09a234b2c62807182a203d

telemeta/search_indexes.py
telemeta/util/backend.py

index b54084b3a53d2e2401169f0928e63cf9461c30cd..ff8d4df53474c61f54482f3655c0cbe4fe39427a 100644 (file)
@@ -20,9 +20,6 @@
 from haystack import indexes
 from telemeta.models import *
 
-class InstrumentField(indexes.CharField):
-    field_type = 'instrument'
-
 class MediaItemIndex(indexes.SearchIndex, indexes.Indexable):
 
     text = indexes.CharField(document=True, use_template=True)
@@ -40,7 +37,7 @@ class MediaItemIndex(indexes.SearchIndex, indexes.Indexable):
     location_principal = indexes.CharField(null='None', boost=1.05)
     location_relation = indexes.CharField()
     ethnic_group = indexes.CharField(model_attr='ethnic_group', default='')
-    instruments = InstrumentField(default='')
+    instruments = indexes.CharField(default='')
     collectors = indexes.CharField(model_attr='collector', default='')
     recorded_from_date = indexes.DateField(model_attr='recorded_from_date', null='None')
     recorded_to_date = indexes.DateField(model_attr='recorded_to_date', null='None')
@@ -111,7 +108,7 @@ class MediaCollectionIndex(indexes.SearchIndex, indexes.Indexable):
     location_principal = indexes.CharField(default='', boost=1.05)
     location_relation = indexes.CharField()
     ethnic_group = indexes.CharField(default='')
-    instruments = InstrumentField(default='')
+    instruments = indexes.CharField(default='')
     collectors = indexes.CharField(model_attr='collector', default='')
     recorded_from_date = indexes.DateField(model_attr='recorded_from_year', null=True)
     recorded_to_date = indexes.DateField(model_attr='recorded_to_year', null=True)
index 0d2416900ae234d69cb62324ff82d6cfac303a5d..13ffd47a4189bdec5de7cd29be30033a27558fab 100644 (file)
@@ -5,15 +5,20 @@ class CustomElasticBackend(ElasticsearchSearchBackend):
     def setup(self):
 
         DEFAULT_FIELD_MAPPING['analyzer']='trim_lower_analyzer'
-        FIELD_MAPPINGS['instrument']={'type':'string', 'analyzer':'pipe_analyzer', 'search_analyzer': 'trim_lower_analyzer'}
         eb = super(CustomElasticBackend, self)
-        eb.DEFAULT_SETTINGS.get('settings').get('analysis').get('tokenizer')['pipe_tokenizer']=\
-            {'type': 'pattern', 'pattern': '\\|'}
         eb.DEFAULT_SETTINGS.get('settings').get('analysis').get('analyzer')['trim_lower_analyzer']=\
             {"type": "custom", "tokenizer": "keyword", "filter": ["trim", "lowercase", "asciifolding"]}
-        eb.DEFAULT_SETTINGS.get('settings').get('analysis').get('analyzer')['pipe_analyzer']=\
-            {'type':'custom', 'tokenizer': 'pipe_tokenizer', 'filter': ['trim', 'lowercase', 'asciifolding']}
         eb.setup()
 
-class CustomElasticEngine(ElasticsearchSearchEngine):
+class CustomElasticSearchQuery(ElasticsearchSearchQuery):
+
+    def build_query_fragment(self, field, filter_type, value):
+        print(field, ' ', filter_type, ' ', value)
+        valeur = super(CustomElasticSearchQuery, self).build_query_fragment(field, filter_type, value)
+        print(valeur)
+        return valeur
+
+class CustomElasticEngine(ElasticsearchSearchEngine):#
     backend = CustomElasticBackend
+    query = CustomElasticSearchQuery
+