Большой макет приложения Django

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

Моя первоначальная идея состоит в том, чтобы разработать систему как «приложение» Django, которое содержит суб-приложения для разделения различных частей системы. Причина, по которой я намеревался сделать эти «вспомогательные» приложения, заключается в том, что они вообще не будут использоваться вне родительского приложения, поэтому было бы мало смысла распространять их по отдельности. Мы предполагаем, что портал будет установлен в нескольких местах (например, в разных университетах), поэтому основное приложение может быть добавлено в несколько проектов Django для его установки. Поэтому у нас есть свой репозиторий для проекта каждой локации, который на самом деле простоsettings.py файл, определяющий установленные приложения портала, иurls.py направляя URL к нему.

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

Моя идея для исправления состоит в том, чтобы сделать все репозитории проекта «веткой» проекта «основного» местоположения, чтобы я мог извлекать любые изменения из этого мастера. Я думаю, что это грязно, и это означает, что у меня есть еще один репозиторий, чтобы посмотреть.

Я ищу лучший способ достичь этого проекта. Кто-нибудь может порекомендовать решение или подобный пример, на который я могу взглянуть? Кажется, проблема в том, что я разрабатываю Djangoпроект а не просто Джангоприложение.

Ответы на вопрос(3)

Ваш ответ на вопрос