I'm implementing a search system onto my django project, using django haystack. The problem is that some fields in my models have some french accents, and I would like to find the entries which contents the query with and without accents.
I think the best Idea is to create a SearchIndex with both the fields with the accents, and the same field without the accents.
Any idea or hint on this ?
Here is some code
Imagine the following models :
Cars(models.Model):
name = models.CharField()
and the following Haystack Index:
Cars(indexes.SearchIndex):
name = indexes.CharField(model_attr='name')
cleaned_name = indexes.CharField(model_attr='name')
def prepare_cleaned_name(self, object):
return strip_accents(object.name)
now, in my index template, I put the both fields :
{{ object.cleaned_name }}
{{ object.name }}
So, thats some pseudo code, I don't know if it works, but if you have any idea on this, let me know !