]> git.parisson.com Git - telemeta.git/commitdiff
Remodif mapping ES (en cours)
authormathieu <mathieu.boye28@gmail.com>
Fri, 29 Apr 2016 16:12:39 +0000 (18:12 +0200)
committermathieu <mathieu.boye28@gmail.com>
Fri, 29 Apr 2016 16:12:39 +0000 (18:12 +0200)
env/debug.env
modif telemeta
telemeta/forms/haystack_form.py
telemeta/util/backend.py

index a19e34770877c2c4104fc1cee497ee521afd6e88..7a9fbbcc2efd668f22107e8e9316a87bd0755b0f 100644 (file)
@@ -18,4 +18,4 @@ BROKER_URL=redis://broker:6379/0
 # If this is True, all tasks will be executed locally by blocking until the task returns.
 CELERY_ALWAYS_EAGER=False
 
-REINDEX=False
+REINDEX=True
index 23951d524fc16abdea8d5ec4138766521f5d7704..3a0adafe2e714acb34e53fdcae5400486f204137 100644 (file)
@@ -1,6 +1,34 @@
-pas  assez d items dans recherche
+date enreg -> periode enr
+
+en ligne /acces compte marche pas
+
+taille max analyzer ES prod
+
+message attente autoc.
+
+verif format cote recherche (ex : _I_1995_ ) simple
+
+message erreur annee
+
+autoc lieu
+
+titre recherche bool
 
-filtres apparait 1 fois sur 2
+item deja dans liste
+
+inedits/edites X2 filtres
+
+1893 annee fantome
+
+fin traduc (Maj + fonctions supp)
+
+cahngement page : reste sur mm tri
+
+verif req bool quand valid avancee
+
+completer form quand recherche avancee avec resultats
+
+pas  assez d items dans recherche
 
 nb items enum + liste
 
index cd47006fbf9f97c13f79aee9dc3283d93b2c6753..777a37a7c142ddb698b80dbc6e2eb5248234728b 100644 (file)
@@ -205,11 +205,12 @@ class HayAdvanceForm(SearchForm):
             if self.cleaned_data.get('ethnic_group') != '':
                 sqs = sqs.filter(ethnic_group__contains=self.cleaned_data['ethnic_group'])
 
-        if self.cleaned_data.get('instruments'):
-            sqs = sqs.filter(self.filterInstru(self.cleaned_data['instruments']))#
+        if self.cleaned_data.get('instruments'):#
+            print(self.filterInstru(self.cleaned_data['instruments']))
+            sqs = sqs.filter(self.filterInstru(self.cleaned_data['instruments']))
 
         if self.cleaned_data.get('collectors'):
-            sqs = sqs.filter(collectors__contains=self.cleaned_data['collectors'])
+            sqs = sqs.filter(collectors__startswith=self.cleaned_data['collectors'])
 
         if self.cleaned_data['recorded_from_date']:
             sqs = sqs.filter(recorded_from_date__gte=self.cleaned_data['recorded_from_date'])
index 17e542b702166f6d458743b339b7e71a6d48d110..3db02c1e4068087024a5c53aa39773a5c879a452 100644 (file)
@@ -1,6 +1,10 @@
 # -*- coding: utf-8 -*-
 
 from haystack.backends.elasticsearch_backend import *
+import string
+import re
+
+regexSpacePunc = "[\\s"+re.escape(string.punctuation)+"]+"
 
 class CustomElasticBackend(ElasticsearchSearchBackend):
 
@@ -9,21 +13,21 @@ class CustomElasticBackend(ElasticsearchSearchBackend):
         FIELD_MAPPINGS['keyword'] = {'type': 'string', 'analyzer':'lowercase_analyzer'}
         eb = super(CustomElasticBackend, self)
         eb.DEFAULT_SETTINGS.get('settings').get('analysis').get('tokenizer')['esc_scape_tokenizer']=\
-            {"type": "pattern", "pattern": "\\s|\\|"}
+            {"type": "pattern", "pattern": regexSpacePunc}
         eb.DEFAULT_SETTINGS.get('settings').get('analysis').get('analyzer')['whitespace_asciifolding_analyzer']=\
-            {"type": "custom", "tokenizer": "esc_scape_tokenizer", "filter": ["lowercase", "word_delimiter", "asciifolding"]}
+            {"type": "custom", "tokenizer": "esc_scape_tokenizer", "filter": ["lowercase", "asciifolding"]}
         eb.DEFAULT_SETTINGS.get('settings').get('analysis').get('analyzer')['lowercase_analyzer'] = \
             {"type": "custom", "tokenizer": "keyword", "filter": ["lowercase"]}
         eb.setup()
 
 
-import unicodedata
-class CustomElasticSearchQuery(ElasticsearchSearchQuery):
+import unicodedata#
+class CustomElasticSearchQuery(ElasticsearchSearchQuery):#
 
     def build_query_fragment(self, field, filter_type, value):
-        #print(field, ' ', filter_type, ' ', value)
+        print("Query fragment :"+ field+ ' '+ filter_type+ ' '+ value)
         valeur = super(CustomElasticSearchQuery, self).build_query_fragment(field, filter_type, value)
-        #print(valeur)
+        print("Query fragment result "+ valeur)
         return valeur
 
     def build_query(self):