def _create_lookup_query(self, name): query = None name_forms = create_name_forms(unicode(name)) for name_form in name_forms: if query is None: query = Q(indexed_names__form__istartswith=name_form) else: query = query | Q(indexed_names__form__istartswith=name_form) return query
def _create_lookup_query (self, name): query = None name_forms = create_name_forms(unicode(name)) for name_form in name_forms: if query is None: query = Q(indexed_names__form__istartswith=name_form) else: query = query | Q(indexed_names__form__istartswith=name_form) return query
def test_create_forms (self): data = ( (u'Māori', 'mi', 'Latn', set((u'Maori', u'Maaori', u'Māori'))), (u'François', 'fr', 'Latn', set((u'François', u'Francois'))), (u'A. Smith', None, None, set((u'A. Smith', u'A Smith'))), ) for original, language_code, script_code, expected in data: actual = create_name_forms(original, language_code, script_code) self.assertEqual(actual, expected)
def test_create_forms(self): data = ( (u'Māori', 'mi', 'Latn', set((u'Maori', u'Maaori', u'Māori'))), (u'François', 'fr', 'Latn', set((u'François', u'Francois'))), (u'A. Smith', None, None, set((u'A. Smith', u'A Smith'))), ) for original, language_code, script_code, expected in data: actual = create_name_forms(original, language_code, script_code) self.assertEqual(actual, expected)
def _add_name_index (self): """Adds the forms of this name to the name index.""" parts = [] language_code = self.language.get_code() script_code = self.script.get_code() name_forms = create_name_forms(self.display_form, language_code, script_code) for name in name_forms: parts.extend(name.split()) for part in set(parts): indexed_form = NameIndex(entity=self.name.entity, name=self.name, name_part=self, form=part) indexed_form.save()
def _add_name_index(self): """Adds the forms of this name to the name index.""" parts = [] language_code = self.language.get_code() script_code = self.script.get_code() name_forms = create_name_forms(self.display_form, language_code, script_code) for name in name_forms: parts.extend(name.split()) for part in set(parts): indexed_form = NameIndex(entity=self.name.entity, name=self.name, name_part=self, form=part) indexed_form.save()