Два проекта Django с общими моделями и бизнес-логикой
У меня есть два проекта Django, которые имеют разные варианты использования. Там достигаются с использованием разных доменов. Они размещены на двух разных серверах. Также каждый проект Django имеет свою собственную базу данных.
Теперь оба проекта имеют несколько моделей и общую бизнес-логику. Я не хочу дублировать код и данные, что будет хаотично в будущем. Кроме того, я хочу, чтобы модели и код (бизнес-логика) были синхронизированы (при изменении моделей / кода).
Может ли кто-нибудь направить меня к шаблону, который может помочь мне достичь необходимой архитектуры: 2 отдельных проекта с общими моделями и бизнес-логикой.
Заранее спасибо.
1 ответ
Я делал это раньше. Вам придется переместить совместно используемые модели и бизнес в новый пакет Python (лучше, если вы сможете создать приложение django, которое инкапсулирует эти модели), в отдельном каталоге.
Добавьте этот каталог в путь к Python (тот, который содержит пакет, а не сам пакет), и вы сможете использовать этот код в своих проектах.
Единственным недостатком этого является необходимость настройки PYTHON_PATH на ваших серверах или необходимость вручную копировать этот пакет в ваши среды выполнения.