Django - как указать базу данных для модели?

Есть ли способ указать, что модель (или даже приложение) должна использовать только одну конкретную базу данных?

Я работаю с устаревшей базой данных, которую я не использую». не хочу меняться У меня есть две базы данных - по умолчанию это sqlite, который может быть использован для администратора и т. Д., И устаревшая. Я использовал inspectdb для создания модели (части) унаследованной базы данных, и она имеет managed = False . Но есть ли способ указать в самой модели, что она применяется только к конкретной базе данных?

Я вижу, что вы можете указать , используя = databasename в некоторых наборах запросов и т. Д., Но это не хорошо для таких вещей, как Databrowse (и, возможно, также общие представления?). Недостатком Databrowse может быть то, что вы не можете указать базу данных, но кажется, что это правильное место для указания именно модели ...

Тогда я подумал, что, возможно, ответ заключается в написании пользовательского менеджер моделей , который ссылается только на мою унаследованную базу данных, но в документации ничего подобного не упоминается.

У меня просто другая ментальная модель того, как можно использовать несколько баз данных для мира Джанго?

25
задан pfctdayelise 19 August 2010 в 06:06
поделиться

1 ответ

Насколько я знаю, вы не можете указать базу данных непосредственно в модели, поскольку это не позволит приложению быть многократно используемым, но из того, что я могу найти в документации:

https://docs.djangoproject.com/en/1.8/topics/db/multi-db/

12
ответ дан 28 November 2019 в 21:15
поделиться
Другие вопросы по тегам:

Похожие вопросы: