Django не распознает метаданные app_label
Проблема
У меня есть несколько БД для подключения к различным приложениям на моем сервере django, который обслуживает только данные из БД. Недавно я добавил новую БД и запустил python3 manage.py inspectdb --database=new_db
, затем я добавил app_label
для правильного подключения к БД. Но почему-то django продолжает возвращать ошибку программирования с ошибкой недопустимого имени объекта. Я дважды проверил, и БД и таблицы точно на месте. Затем я обнаружил, что модель пытается подключиться к своей базе данных по умолчанию, в которой нет таблицы, к которой я пытаюсь подключиться. Что я должен попытаться исправить?
Резюме
- модель django пытается подключиться к своей БД по умолчанию, несмотря на то, что она явно объявила целевую БД в своей части Meta.
- Объявление БД, кажется, в порядке, потому что
inspectdb
было сделано идеально. - В объявлении БД тоже нет опечаток.
<Объявление БД на 'settings.py'>
DATABASES = {
'default' : {
'ENGINE' : 'mssql',
'NAME' : 'DEFAULT_DB',
'USER' : env('DB_USER'),
'PASSWORD' : env('DB_PASSWORD'),
'HOST' : env('DB_HOST'),
'PORT' : env('DB_PORT'),
},
'new_db' : {
'ENGINE' : 'mssql',
'NAME' : 'NEW_DB',
'USER' : env('DB_USER'),
'PASSWORD' : env('DB_PASSWORD'),
'HOST' : env('DB_HOST'),
'PORT' : env('DB_PORT'),
}
}
<Мета данные 'models.py'>
class Meta:
managed = False
app_label='new_db'
db_table='NEW_TB'