PostgreSQL
 sql >> Base de Dados >  >> RDS >> PostgreSQL

Usando unaccent com SearchVector e SearchQuery no Django


Você não pode usar 'unaccent' em 'SearchVector', mas precisa definir uma nova configuração "unaccented" no PostgreSQL.
  1. Se você perdeu, instala a extensão unaccent .

  2. Crie seu dicionário sem acento no PostgrSQL ou usando um migrações vazias com este SQL:
    CREATE TEXT SEARCH CONFIGURATION french_unaccent( COPY = french );
    ALTER TEXT SEARCH CONFIGURATION french_unaccent
    ALTER MAPPING FOR hword, hword_part, word
    WITH unaccent, french_stem;
    

  3. Use esta configuração em sua consulta Django:
    SearchVector('title','abstract', config='french_unaccent')
    SearchQuery(word, config='french_unaccent')
    

Você pode encontrar mais informações sobre esse tipo de configuração na documentação oficial do PostgreSQL em vários artigos