Django 1.2: несколько баз данных и общие типы контента - PullRequest
3 голосов
/ 07 июля 2010

Я работаю над одним проектом с django 1.2.

У меня есть 2 базы данных: - Во-первых, для пользователей, профиль пользователя, сеанс ... - Во-вторых, для хранения данных из моих конкретных моделей, таких как пост в блоге, фотографии, файлы ...

Я создал роутер (dbrouter.py) для управления местом хранения каждой модели (вместо использования 'using' для каждого набора запросов). Когда я синхронизирую свой проект, это не проблема.

Итак, мне нужна структура типов контента в первой и второй базах данных. Теперь, как мне объявить приложение contenttypes в двух моих базах данных и как я буду уверен, что данные типов контента синхронизированы в двух моих базах данных?

Единственный обходной путь, который я нашел, был:

  • Объявите структуру типов содержимого два раза в файле settings.py.
  • Управление с помощью dbrouter двух типов контента для каждой базы данных
  • Когда я синхронизирую проект, только таблица django_content_type из моей первой базы данных обновляется данными.
  • Вручную я копирую данные из первой базы данных (таблица django_content_type) во вторую.

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

1 Ответ

0 голосов
/ 08 июля 2012

Я думаю, что "наилучшей практикой" здесь было бы не использовать две разные базы данных так, как вы делаете.Я не могу придумать какой-либо действительно полезной причины, чтобы отделить пользователей / профили / сеансы от остальных данных для вашего приложения.

...