FIAS_SEARCHERS = { 'sequence': 'step_by_step', 'sphinx': 'by_sphinx', } _s = getattr(settings, 'FIAS_SEARCH_ENGINE', 'sequence') FIAS_SEARCH_ENGINE = _s if _s in FIAS_SEARCHERS else 'sequence' if FIAS_SEARCH_ENGINE == 'sphinx': try: import sphinxit except ImportError: raise ImproperlyConfigured('sphinxit module required for `sphinx` search engine!') FIAS_SPHINX_ADDROBJ_INDEX_NAME = getattr(settings, 'FIAS_SPHINX_ADDROBJ_INDEX_NAME', 'addrobj') FIAS_SPHINX_ADDROBJ_INDEX = FIAS_DATABASE_ALIAS + '_' + FIAS_SPHINX_ADDROBJ_INDEX_NAME FIAS_SUGGEST_VIEW = 'fias:suggest_{0}'.format(FIAS_SEARCHERS[FIAS_SEARCH_ENGINE]) user_weights = getattr(settings, 'FIAS_SB_WEIGHTS', {}) if not isinstance(user_weights, dict): raise ImproperlyConfigured('FIAS_SB_WEIGHTS should be a dict type') weights.update(user_weights) # Чтобы использовать для данных ФИАС другую базу данных, # добавьте роутер 'fias.routers.FIASRouter' в список `DATABASE_ROUTERS`
DELETED_TABLES = ('normdoc', 'addrobj', 'house', 'room', 'stead', 'houseint') DATABASE_ALIAS = getattr(settings, 'FIAS_DATABASE_ALIAS', DEFAULT_DB_ALIAS) if DATABASE_ALIAS not in settings.DATABASES: raise ImproperlyConfigured('FIAS: database alias `{0}` was not found in DATABASES'.format(DATABASE_ALIAS)) elif DATABASE_ALIAS != DEFAULT_DB_ALIAS and 'fias.routers.FIASRouter' not in settings.DATABASE_ROUTERS: raise ImproperlyConfigured('FIAS: for use external database add `fias.routers.FIASRouter`' ' into `DATABASE_ROUTERS` list in your settings.py') user_weights = getattr(settings, 'FIAS_SB_WEIGHTS', {}) if not isinstance(user_weights, dict): raise ImproperlyConfigured('FIAS_SB_WEIGHTS should be a dict type') weights.update(user_weights) """ см. fias.importer.filters указывается список путей к функциям-фильтрам фильтры применяются к *каждому* объекту один за другим, пока не закончатся, либо пока какой-нибудь из них не вернёт None если фильтр вернул None, объект не импортируется в БД пример: FIAS_TABLE_ROW_FILTERS = { 'addrobj': ( 'fias.importer.filters.example_filter_yaroslavl_region',