search: create and use unaccentuated dictionary (#34191)

This commit is contained in:
Frédéric Péters 2020-02-19 10:10:52 +01:00
parent 149e68b7e7
commit e2348d6977
2 changed files with 43 additions and 1 deletions

View File

@ -0,0 +1,42 @@
# -*- coding: utf-8 -*-
# Generated by Django 1.11.17 on 2020-02-19 08:20
from __future__ import unicode_literals
from django.db import migrations
from django.db.migrations.operations.base import Operation
class TextSearchConfiguration(Operation):
reversible = True
def state_forwards(self, app_label, state):
pass
def database_forwards(self, app_label, schema_editor, from_state, to_state):
if schema_editor.connection.vendor != 'postgresql':
return
schema_editor.execute('CREATE EXTENSION IF NOT EXISTS unaccent SCHEMA public')
schema_editor.execute('CREATE TEXT SEARCH CONFIGURATION french_unaccent( COPY = french )')
schema_editor.execute(
'ALTER TEXT SEARCH CONFIGURATION french_unaccent '
'ALTER MAPPING FOR hword, hword_part, word '
'WITH public.unaccent, french_stem')
def database_backwards(self, app_label, schema_editor, from_state, to_state):
if schema_editor.connection.vendor != 'postgresql':
return
schema_editor.execute('DROP TEXT SEARCH CONFIGURATION french_unaccent')
def describe(self):
return 'Creates unaccent french text search configuration'
class Migration(migrations.Migration):
dependencies = [
('search', '0006_indexedcell'),
]
operations = [
TextSearchConfiguration(),
]

View File

@ -256,7 +256,7 @@ MELLON_IDENTITY_PROVIDERS = []
# search services
COMBO_SEARCH_SERVICES = {}
POSTGRESQL_FTS_SEARCH_CONFIG = 'french'
POSTGRESQL_FTS_SEARCH_CONFIG = 'french_unaccent'
# mapping of payment modes
LINGO_NO_ONLINE_PAYMENT_REASONS = {}