Скажем, у меня есть проект Django, который называется myproject
.В этом проекте, конечно же, будет папка myproject
, в которой будут храниться мой файл настроек и другие глобальные файлы конфигурации.По мере того, как мой проект развивался и начал включать много разных приложений, я поместил определенные функции, общие для всех моих приложений, в модуль utils
в моей папке myproject
.На данный момент я хочу написать несколько модульных тестов для этих утилит, а также добавить некоторые глобальные команды проекта, которые, по моему мнению, имеет смысл разместить в папке myproject
.Чтобы получить доступ к этим функциям, мне нужно добавить myproject
в мой список установленных приложений.Это прекрасно работает, но я никогда не видел, чтобы это было сделано в проекте Django.
Мой вопрос таков: это плохая практика?Есть ли непредвиденные риски, которых я здесь не вижу?Более чистый способ делать вещи?Будет ли безопаснее создать приложение под названием common
, в котором будут храниться мои утилиты, глобальные команды и т. Д.?Как вы обычно организуете свои модули, если они определяют функциональные возможности уровня проекта?
В основном моя структура каталогов просто следующая:
.
├── myproject
│ ├── management
│ │ └── commands
│ └── utils
├── app1
├── app2
└── app3
И мне интересно, стоит ли мне добавить еще одинприложение под названием commonapp
, где хранятся мои общие команды или если можно добавить myproject в список установленных приложений.