Мультибаза данных Django, одна модель

В моем проекте Django мне нужны две базы данных, но только одна модель.

Например, экспертная база данных и база данных эксплойтов. Маршрутизатор позволяет мне записывать в базу данных эксплойтов или экспертную базу данных в соответствии с группами пользователей и разрешениями.

Но как продублировать модель проекта (описанную в model.py) в обеих базах?


person djangoliv    schedule 06.02.2017    source источник


Ответы (1)


Вам нужно запустить migrate для каждой базы данных. Используйте этот переключатель, чтобы указать базу данных:

--database DATABASE   Nominates a database to synchronize. Defaults to the
                    "default" database.

DATABASE в данном случае — это ключ настроек, который вы используете в поле settings.py для настройки каждой базы данных.

person Risadinha    schedule 06.02.2017
comment
Спасибо, но внутренняя модель Django тоже дублируется (например, таблицы авторизации). Может быть, это и не настоящая проблема... - person djangoliv; 06.02.2017
comment
Может быть, вам следует объяснить, что вы хотите решить, делая это? (В этом случае отредактируйте свой вопрос или создайте новый.) Возможно, использование двух разных баз данных - не лучший способ. Возможно, две модели, которые наследуются от абстрактной модели, лучше. Или даже использование фреймворка site может быть тем, что вам действительно нужно. - person Risadinha; 07.02.2017