# settings.py <<<<<<< HEAD from .models import LocalDatabase from decouple import config from django.conf import settings from .models import LocalDatabase def load_database_settings(): # Загружаем настройки из базы данных ======= from decouple import config from django.conf import settings from django.apps import apps def load_database_settings(): # Загружаем настройки из базы данных LocalDatabase = apps.get_model('app_settings', 'LocalDatabase') >>>>>>> antifraud local_db_settings = LocalDatabase.objects.all() for db in local_db_settings: # Пример добавления дополнительной базы данных settings.DATABASES[db.name] = { 'ENGINE': 'django.db.backends.mysql', 'NAME': db.db_name, 'USER': db.username, 'PASSWORD': db.password, 'HOST': db.host, 'PORT': db.port, } # Вызов этой функции при старте проекта, например, в файле wsgi.py load_database_settings() # Чтение локальных баз данных local_databases = LocalDatabase.objects.filter(is_active=True) # Основная база данных DATABASES = { 'default': { 'ENGINE': 'django.db.backends.postgresql', 'NAME': config('DB_NAME'), 'USER': config('DB_USER'), 'PASSWORD': config('DB_PASSWORD'), 'HOST': config('DB_HOST'), 'PORT': config('DB_PORT'), }, } # Добавление локальных баз данных for db in local_databases: DATABASES[db.name] = { 'ENGINE': 'django.db.backends.postgresql', 'NAME': db.name, 'USER': db.user, 'PASSWORD': db.password, 'HOST': db.host, 'PORT': db.port, }