Django 4.0.1 аутентификация из базы данных не по умолчанию
Я создаю проект с помощью DRF, я использую два псевдонима базы данных: Default и Oracle. В базе данных oracle есть все таблицы django. Как я могу использовать authenticate, если auth_user находится на базе данных oracle, а не default.
Здравствуйте, как видно из документации Django, вы можете работать с несколькими базами данных, но вам нужно переписать большинство ваших Serializers/Views в зависимости от моделей, которые вам нужно получить/записать/удалить. Вот ссылка на документацию: https://docs.djangoproject.com/en/4.0/topics/db/multi-db/
>>> # This will run on the 'default' database.
>>> Author.objects.all()
>>> # So will this.
>>> Author.objects.using('default').all()
>>> # This will run on the 'replica1' database.
>>> Author.objects.using('replica1').all()
DATABASES = {
'default': {},
'auth_db': {
'NAME': 'auth_db_name',
'ENGINE': 'django.db.backends.mysql',
'USER': 'mysql_user',
'PASSWORD': 'swordfish',
},
'primary': {
'NAME': 'primary_name',
'ENGINE': 'django.db.backends.mysql',
'USER': 'mysql_user',
'PASSWORD': 'spam',
},
'replica1': {
'NAME': 'replica1_name',
'ENGINE': 'django.db.backends.mysql',
'USER': 'mysql_user',
'PASSWORD': 'eggs',
},
'replica2': {
'NAME': 'replica2_name',
'ENGINE': 'django.db.backends.mysql',
'USER': 'mysql_user',
'PASSWORD': 'bacon',
},
}