IT-новости про Python, которые стоит знать

Собрали в одном месте самые важные ссылки
читайте нас в Twitter

     08.08.2019       Выпуск 294 (05.08.2019 - 11.08.2019)       Статьи

Первое, что нужно сделать запуская проект на Django

Встала передо мной задача написать социальную сеть. А коль скоро язык программирования, которым я более-менее владею — это Python, я выбрал фреймворк Django для реализации проекта. Чтобы не тратить время на написание HTML шаблонов и CSS стилей, эти файлы я беру в интернете с пометкой Free. В основном это шаблоны от Colorlib. Поехали. Сразу оговорюсь, что использую PyCharm, поэтому могу не знать все команды из файла manage.py.

     30.07.2019       Выпуск 293 (29.07.2019 - 04.08.2019)       Статьи

Год приключений с graphene-python

Последний год я работал с graphene-python + django ORM и за это время я пытался создать какой-то инструмент, чтобы сделать работу с graphene удобнее. В результате у меня получилась небольшая кодовая база graphene-framework и набор некоторых правил, чем я бы и хотел поделиться.

     29.07.2019       Выпуск 293 (29.07.2019 - 04.08.2019)       Статьи

3 кейса для использования Celery в Django-приложении

Я занимаюсь созданием веб-приложений на Django. В основном, это SaaS сервисы для бизнеса. Во всех этих приложениях есть необходимость в асинхронных задачах. Для их реализации использую Celery. В статье расскажу о ситуациях, в которых применяю Celery, с примерами кода.

     26.07.2019       Выпуск 292 (22.07.2019 - 28.07.2019)       Статьи

Django 3.0 будет асинхронным

Асинхронный Python разрабатывался много лет, и в экосистеме Django мы экспериментировали с ним в Channels с ориентацией в первую очередь на поддержку вебсокетов.

 

По мере развития экосистемы стало очевидно, что, хотя нет насущной необходимости расширять Django для поддержки отличных от HTTP протоколов, таких как вебсокеты, поддержка асинхронности даст много преимуществ для традиционной model-view-template структуры Django.

     25.07.2019       Выпуск 292 (22.07.2019 - 28.07.2019)       Статьи

Мелкая питонячая радость #8: мелкие удовольствия для работы с БД

Беглый опрос коллег на моем текущем проекте показал, что при словах "ORM и работа с БД" в подавляющем большинстве случаев звучат слова "Алхимия" и "Django ORM". Знания этих двух слов, в общем, достаточно, чтобы писать чистый, аккуратный и рабочий код. Но расширение инженерного кругозора пока еще никому не вредило, поэтому сегодня мы добавим в нашу картину мира несколько (возможно, до этого дня незнакомых) классных штук для работы с БД.

     20.07.2019       Выпуск 291 (15.07.2019 - 21.07.2019)       Видео

Django внутри Django: framework для чатботов

Михаил Новиков (Fasttrack, Тимлид)

С одной стороны — это доклад о том, как построить low-code платформу на базе Django Template Language, сделать ее безопасной и дать пользователям описывать бизнес-процессы на языке джанго-шаблонов. С другой — это рассказ для продвинутых (и не очень) разработчиков, как можно извратить джангу и пользоваться абсолютно всеми ее компонентами не по назначению☺ мы переписали роутер, urlconf, middleware, написали свою систему вьюх, свой template engine на базе родного джанговского и тд. Полезное для слушателей — на примере нашего "Django внутри Django" я расскажу о кишках самой джанги, об интересных паттернах, которые в ней применяются (например, миддлвары, которые начиная с версии 2 сделаны в функциональном стиле), об инсайтах по оптимизации (например, оказывается, резолв по урезанной части urlconf’а примерно в 10 раз быстрее резолва по полному urlconf’у) и так далее

     19.07.2019       Выпуск 291 (15.07.2019 - 21.07.2019)       Статьи

Управление конечным автоматом с использованием Django FSM

Представьте себе приложение типа JIRA со сложным рабочим процессом. Для создания такого приложения требуется поддержка управления конечным автоматом. Если вы создаете свое приложение с помощью Django, Django FSM предоставляет вам готовую поддержку для управления конечным автоматом.

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

     11.07.2019       Выпуск 290 (08.07.2019 - 14.07.2019)       Статьи

Настройка Django Settings: лучшие практики

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

     04.07.2019       Выпуск 289 (01.07.2019 - 07.07.2019)       Статьи

Как сообщить Google о других языках на вашем сайте Django

Django имеет очень мощный механизм для обслуживания сайтов на нескольких языках. Ему необходимо небольшое количество настроек, для добавления дополнительных языков на сайт Django.

     20.06.2019       Выпуск 287 (17.06.2019 - 23.06.2019)       Статьи

Автоматизация скучных вещей в Django с помощью фреймворка Check

В этой статье я описал примеры из моего личного опыта, как мы используем библиотеки inspect, ast.

     11.06.2019       Выпуск 286 (10.06.2019 - 16.06.2019)       Статьи

Развертывание приложения на Django с uWSGI и nginx в производственной среде

Это небольшое руководство предназначено для пользователя Django, который хочет настроить приложение Django c веб-сервером в производственной среде.

     11.06.2019       Выпуск 286 (10.06.2019 - 16.06.2019)       Статьи

Автоматически экспортируем Google Forms в Notion с помощью IFTTT и Django

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

Я разрабатываю свой проект. На лэндинге после ввода емейла выдается ссылка на соцопрос на базе Google Forms. Ответы записываются в табличечку на Google Drive.

Проблема в том, что все свое я ношу с собой сохраняю в Notion. Это банально удобней. Обходился ручным копипастом, пока отзывов было мало. Потом их стало больше — и надо было что-то придумать. Кому интересно, что вышло — добро пожаловать под кат.

     06.06.2019       Выпуск 285 (03.06.2019 - 09.06.2019)       Статьи

Мелкая питонячая радость #2: Starlette

Так уж сложилось, что на Python пишут много веб-приложений. Эту нишу Python разработки почти полностью поделили между собой два здоровых игрока — Django и Flask. Поэтому большой процент программистов, пишущих на Python, заточен на работу с этими двумя фреймворками.

 

По этой причине у многих Python-разрабов складывается некое подобие тунельного зрения — их инженерный подход заперт между этими двумя библиотеками.

     06.06.2019       Выпуск 285 (03.06.2019 - 09.06.2019)       Статьи
     30.05.2019       Выпуск 284 (27.05.2019 - 02.06.2019)       Статьи

Кастомизация Django ORM на примере ZomboDB

Часто при работе с Django и PostgreSQL возникает необходимость в дополнительных расширениях для базы данных. И если например с hstore или PostGIS (благодаря GeoDjango) всё достаточно удобно, то c более редкими расширениями — вроде pgRouting, ZomboDB и пр. — приходится либо писать на RawSQL, либо кастомизировать Django ORM. Чем я предлагаю, в данной статье, и заняться, используя в качестве примера ZomboDB и его getting started tutorial. И заодно рассмотрим как можно подключить ZomboDB к проекту на Django.

     30.05.2019       Выпуск 284 (27.05.2019 - 02.06.2019)       Статьи
     27.04.2019       Выпуск 279 (22.04.2019 - 28.04.2019)       Статьи

[Перевод] В каких случаях стоит использовать Django (а в каких не стоит)

Давайте поможем разработчикам разобраться, подходит ли фреймворк Django для их следующего проекта. Вполне вероятно — подходит.

Не стоит хвататься за определенный язык программирования или фреймворк лишь потому, что вы пользовались им в вашем предыдущем проекте, или просто потому что он вам хорошо знаком. Так дела не делаются.

Прежде чем приступать к новому проекту, следует оценить, какой язык или фреймворк лучше всего подойдет вам для достижения желаемого результата. Что для вас наиболее важно? Безопасность, скорость разработки, масштабируемость, универсальность, поддержка?
Лучше принять информированное решение перед тем как приступать к работе, чем потом раскаиваться в поспешном (или, хуже того, навешивать на проект костыли в процессе реализации – из-за того, что заранее не озаботились его поддержкой).