django models = бизнес-логика + доступ к данным? Или слой доступа к данным должен быть отделен от модели django?

В Django предлагаемая архитектура программного обеспечения заключается в том, чтобы поместить всю бизнес-логику и доступ к данным в модели.

Но некоторые коллеги предлагают, чтобы слой доступа к данным был отделен от бизнес-логики (слоя бизнес-сервисов). Они обосновывают это тем, что уровень доступа к данным может изолировать изменения, если используется другой источник данных. Они также говорят, что существует бизнес-логика, которая может находиться более чем в одной модели.

Но когда я начинаю кодировать, используя отдельные уровни доступа к данным и бизнес-логики, уровень доступа к данным оказывается простым (в основном код модели, определяющий схему базы данных) и, похоже, не добавляет большой ценности.

Действительно ли есть ценность в разделении доступа к данным из моделей django или django уже обеспечивает достаточный уровень доступа к данным с его ORM?

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

15
задан TaiwanGrapefruitTea 18 January 2012 в 16:24
поделиться