принять запрос, и лучше реализовать логику в отдельных хендлерах, и у меня много вопросов, вот два из них: зачем и как?
Для аккуратности , в отдельном файле типа utils.py
Но если вьюшка на 10 строк, то можно и в ней. Ну или если 20-30 строк которые не нужны в никаких других эндпоинтах, то можно в этом же классе метод создать и его вызвать. Просто что бы get() был чистым
Это называется «тонкий контроллер»
Дробить логику на компоненты, которые легче тестировать и переиспользовать
Самое главное слово в разработке это «декомпозиция». Без нее код это мусорка
https://www.google.com/amp/s/habr.com/ru/amp/post/544856/
В самом начале статьи написано что джанго это mvc, а также само определение mvc какое-то кривое xd дальше не читал
А стоило бы) т.к. Правильнее было б сказать что там написано "в большинстве источников говорят что джанга это mvc и дают в среднем такое определение *определение*", а дальше разбирают что с этим не так)
В статье каждый из элементов mvc это ошибка его первоначального определния
А можно пожалуйста подробнее, или ссылку на более правильный источник, если не сложно, я бы с радостью ознакомился (не сарказм), а то меня правда несколько беспокоит вопрос архитектуры в джанго проектах и как его лучше реализовать, да и в целом полезно было бы
Есть область "архитектура программного обеспечения", по ней много учебников и примеров как делать масштабируемые и эффективные приложения
А что не так
контроллер не должен валидировать, хранить бл, ходить в бд и т.п.
Кстати, я вот валидирую данные ЗАПРОСА как раз во views
NewsCreateSerializer и NewsDetailSerializer с разными данными получается? Один для создает , другой отдает сериализованные данные
Это чтобы в одно сериалайзере переопределить validate?
я про валидацию бл имел ввиду
Обсуждают сегодня