Как стать автором
Обновить

Комментарии 6

Работа с HTML-шаблонами с помощью Jinja2

Ну реально, кому вот это нужно в 2021? Если только
aiohttp-программистам

И то вряд-ли.
Да, с точки зрения профессиональной разработки это действительно несет не много смысла в современных реалиях. Но в контексте обучения начинающих backend-разработчиков, html-шаблоны позволяют, например, сделать простейший интерфейс для приложения человеку с минимальными познаниями во фронтенде и без дополнительного развертывания раздающего статику веб-сервера.
Может я не прав, но простейший интерфейс вполне можно бы заменить постманом, ведь основная тема это бэкэнд. Не скажу за ваше направление, но люди изучавшие Джанго по поростым туториалам с шаблонами выкатывают глаза по 5 копеек видя DRF. Или взять тот же flask и flask-restful. Вам оно за несколько лет на практике обучения конечно виднее, но лично я этого подхода никогда не понимал.
Спасибо за комментарий, согласен что проще дернуть руками, чем делать интерфейс. На одной из лекций нашей школы мы как-раз рассказываем о том, как настроить генерацию swagger-а и поднять swagger UI, с помощью которого большинство студентов и взаимодействуют с API. Однако, наша главная задача заключается в том, чтобы в конце курса у обучающихся получился MVP с разными фичами, а графический интерфейс доступный другим пользователям — это хороший плюс к проекту. Это только первая часть статьи, в которой акцент именно на то, как начать работать с aiohttp, в следующих частях будут рассмотрены более практичные для начинающего aiohttp-разработчика вещи.

А почему у вас примеры кода не до конца вычищены?


Например, в main.py можно было бы всю инициализацию запихнуть в одну функцию, а во views.py можно не импортировать web.


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

Спасибо за замечание, структура приложения в этой статье — заготовка для дальнейшей разработки, например в следующей части в main.py добавляется больше разного по функциональности кода, например настройка routes, middlewares и signals. Поэтому было решение заранее разделить код по разным функциям, а не мешать в одну кучу. Насчет лишнего импорта согласен — он используется только во второй части статьи и возможно не стоило оставлять его здесь. Сейчас исправлю.
Зарегистрируйтесь на Хабре, чтобы оставить комментарий