В Django предлагаемая архитектура программного обеспечения включает в себя все бизнес-логику и доступ к данным в моделях.
Но некоторые коллеги предположили, что уровень доступа к данным должен быть отделен от бизнес-логики (уровень бизнес-услуг). Их обоснование заключается в том, что уровень доступа к данным может изолировать изменения, если используется другой источник данных. Они также говорят, что есть бизнес-логика, которая может быть в нескольких моделях.
Но, когда я начинаю кодирование с использованием отдельных слоев доступа к данным и бизнес-логики, уровень доступа к данным прост (в основном код модели, определяющий схему db), и он, похоже, не добавляет большого значения.
Есть ли действительно значение для разделения доступа к данным из моделей django или django уже предоставляет достаточный уровень доступа к данным с его ORM?
Я ищу разработчиков, которые внедрили довольно много приложений django и выяснили, каково их мнение. Это для веб-приложения малого и среднего размера.