Как, когда и что использовать. Можно даже для примера пару статей разобрать.
Один из советов, который мы слышали, — это помещать файл logic.py (я бы его назвал service - прим. Михаила) в каждое приложение Django с самого первого дня. Это дает вам место для размещения бизнес-логики и позволяет держать формы, представления и модели свободными от бизнес-логики. Это может стать ступенькой для перехода к полностью разъединенной модели домена и/или сервисному слою в дальнейшем.
Слой бизнес-логики может изначально работать с объектами модели Django (я бы так не делал и сразу отделял, потом нет времени, уже сложно и т.д. - прим. Михаила) и только позже полностью отделиться от фреймворка и работать с простыми структурами данных Python.
Что касается чтения, вы можете воспользоваться некоторыми преимуществами CQRS, поместив операции чтения в одно место, избежав разбросанных по всему пространству вызовов ORM.
При разделении модулей для чтения и модулей для доменной логики, возможно, стоит отделить себя от иерархии приложений Django. Бизнес-задачи будут пересекать их.
Источник
#djangoschool #django #книги #статьи
Please open Telegram to view this post
VIEW IN TELEGRAM
👍35🔥9 3
Сегодня стрима не будет.
Нужно немного отдохнуть.🥽
Нужно немного отдохнуть.🥽
🤬4👍1
Вышло новое обновление Esmerald 3.3.7 с парой моих небольших PR
Добавлено
Флаг
Изменено
Шаблонизация jinja2 теперь на 100% делегирована Lilya.
Добавлены примеры в документацию для пользователей Windows.
В документации был пример:
Теперь есть команда и для PowerShell
Это позволит запускать Esmerald в Window без Docker. Избавит от ошибки запуска и позволяет указать свои настроеки проекта.
Github
#djangoschool #esmerald
Добавлено
Флаг
--context команды createapp, позволяет создавать каркасы приложений, содержащие более сложные структуры.Изменено
Шаблонизация jinja2 теперь на 100% делегирована Lilya.
Добавлены примеры в документацию для пользователей Windows.
В документации был пример:
ESMERALD_SETTINGS_MODULE='myapp.settings.Development' python -m src.app.py
Теперь есть команда и для PowerShell
$env:ESMERALD_SETTINGS_MODULE="myapp.settings.Development"; python -m src.app.py
Это позволит запускать Esmerald в Window без Docker. Избавит от ошибки запуска и позволяет указать свои настроеки проекта.
Github
#djangoschool #esmerald
👍10🔥6👎1
Начну выкладывать свои старые и новые видео.
Чуть позже сделаю пост с хештегами для навигации по каналу и ссылками на соц. сети.
Чуть позже сделаю пост с хештегами для навигации по каналу и ссылками на соц. сети.
👍15
👍8🔥6
👍11
👍7🔥4
👍7🔥4