Как стать автором
Обновить
3.43
Рейтинг

Django *

Фреймворк для веб-приложений на Python

Сначала показывать
Порог рейтинга

История одного CRUD'а

Разработка веб-сайтов *JavaScript *Django *Управление разработкой *VueJS *

В 2015 году, когда я пришёл на своё текущее место работы, мне было непривычно от необыкновенной свободы действий. Буквально, на новом месте можно было проявить весь творческий потенциал как DevOps-евангелиста. Мне нравилось выстраивать процессы, автоматизировать рутину, делать разработку удобной. Больше всего я люблю оптимизации, а больше всего ненавижу - рутину.

Эта история одной боли и попытке не просто "принять обезболивающее", а реально излечить её. Поэтому готовьтесь переварить лонгрид.

Читать это всё...
Всего голосов 5: ↑5 и ↓0 +5
Просмотры 3.4K
Комментарии 3

Новости

Асинхронный django — status update. Проект vinyl

Python *Django *

Всем привет.

Некоторое время назад я писал про альтернативные возможности, как можно добавить в django асинхронность (есть официальный подход, изложенный в DEP-09). С тех пор у меня получилось оформить свои идеи в нечто относительно цельное, что вылилось в vinyl project. Описание проекта читайте на гитхабе, здесь же я хочу рассказать о его интересных особенностях.

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

Читать далее
Всего голосов 9: ↑7 и ↓2 +5
Просмотры 1.3K
Комментарии 1

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

Python *Django *ReactJS *Контекстная реклама Криптовалюты

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

Читать далее
Рейтинг 0
Просмотры 1.6K
Комментарии 0

Анонимизация базы данных или как быть уверенным, что ты не нарушаешь закон “О персональных данных”

Разработка веб-сайтов *Python *Программирование *Django *Хранение данных *
Из песочницы

В настоящее время практически все ИТ-продукты работают с персональной информацией пользователя: ФИО, телефон, e-mail, паспортные и другие идентифицирующие данные. Для  обеспечения защиты прав и свобод, человека и гражданина при обработке его персональных данных в Российской Федерации существует Федеральный закон от 27.07.2006 N 152-ФЗ “О персональных данных”.

Согласно пункту 2 статьи 5 обработка персональных данных должна ограничиваться достижением конкретных, заранее определенных и законных целей, а в статье 6 установлено, что обработка персональных данных осуществляется с согласия субъекта персональных данных. Все это накладывает определенные ограничения на разработку программных продуктов и заставляет разработчиков думать о возможных последствиях несоблюдения норм законодательства.

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

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

Читать далее
Всего голосов 14: ↑11 и ↓3 +8
Просмотры 8.7K
Комментарии 5

Tile server на коленке: навигация по старинным картам

Python *Django *Nginx *OpenStreetMap *ReactJS *

Я являюсь full stack разработчиком на культурно-историческом IT портале Königsland, который успешно начал свою работу примерно месяц назад. Этот ресурс посвящается культуре и истории Восточной Пруссии и является своеобразной летописью времен, которая больше всего напоминает вирутальный музей, где можно получить довольно полную информацию об истории этого великого края, а эта информация пополняется по мере возникновения у меня свободного времени.

Страницы этой летописи приоткрывают завесу тайны и позволяют получить пользу от современных технологий тем, кто увлекается стариной.

Читать далее
Всего голосов 12: ↑12 и ↓0 +12
Просмотры 3.6K
Комментарии 13

Не самые популярные методы Django ORM

Блог компании OTUS Python *Django *
Перевод

Все мы знаем, что Django предоставляет ORM прямо из коробки, что не позволяет нам писать SQL-запросы. В этом механизме есть большой потенциал. Однако большинство из нас знакомы только с методами filter(), get(), update() и delete() из Django ORM.

В Django ORM есть много других опций, поэтому у нас все же возможность использовать функционал традиционных SQL-запросов. Сегодня в статье я вам про него расскажу.

Читать далее
Всего голосов 10: ↑8 и ↓2 +6
Просмотры 3.5K
Комментарии 4

Откровения про отсутствующий Nested Inline от разработчика с очень маленьким Django

Python *Django *
разработчик с маленьким Django


— Стыдно признаться, но в нашей компании мы до сих пор используем Django…

Так начинали со мной разговор представители навороченных стендов российских конференций Pycon Russia 2021 и Moscow Python Conf++ 2021, где я выступал с докладами про Django.

Эдакий "coming out" без объяснений, почему это стыдно, и зачем в этом надо признаваться. Если уж «Все леди делают это» так давайте говорить об этом, как о чем-то нормальном! Я, например, рассказываю, как делать это в удовольствие и с естественными извращениями. Я про работу с Django, конечно, а вы, о чем подумали?
Дальше речь пойдет как раз про извращения. Шок контент и ненормативная лексика.
Всего голосов 14: ↑11 и ↓3 +8
Просмотры 3.4K
Комментарии 24

Как тестировать сайт на Django. Часть 3. Отправка результата на почту, TestExplorer и декоратор tag

Блог компании PVS-Studio Тестирование IT-систем *Python *Django *Тестирование веб-сервисов *
Tutorial

Тесты написаны, тимлид рад, а что дальше-то делать? А дальше - автоматизация и отправка отчёта по тестам. Именно об этом мы и поговорим в данной статье, попутно затронув полезный инструмент TestExplorer и декоратор tag.

Читать далее
Всего голосов 6: ↑3 и ↓3 0
Просмотры 1.5K
Комментарии 8

Как тестировать сайт на Django. Часть 2. JavaScript и русский текст на английских страницах

Блог компании PVS-Studio Python *JavaScript *Django *Тестирование веб-сервисов *
Tutorial

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

Читать далее
Всего голосов 2: ↑1 и ↓1 0
Просмотры 1.2K
Комментарии 2

Хватит терять клиентов! Или как разработчику тестировать сайт, на примере PVS-Studio. Часть 1

Блог компании PVS-Studio Тестирование IT-систем *Python *Django *Тестирование веб-сервисов *
Tutorial

Сайт с багами – горе для бизнеса. Всего одна 404-я или 500-я ошибка может лишить вашу компанию солидной суммы денег и хорошей репутации. Но есть способ избежать этого: тестировать сайт. О том, как это сделать, расскажет данная статья. Прочитав её, вы узнаете, как тестировать код на Django, создать своего пользователя-тестировщика и много чего еще. Добро пожаловать под кат.

Читать далее
Всего голосов 15: ↑14 и ↓1 +13
Просмотры 3.7K
Комментарии 6

Ленивый деплой Django проекта UWSGI + NGINX (UBUNTU 20.04)

Python *Django *Nginx *
Из песочницы

Здравствуйте!

Хочу представить вам пошаговую инструкцию по деплою django проекта.

Сразу скажу, что используя мою краткую инструкцию вы не поймете механику развертывания. По сути, это просто список команд для деплоя. Тут не будет никаких подробностей касательно работы UWSGI, NGINX и самого Django. Я просто помогу быстро добраться до цели, а цель у нас одна - задеплоить уже наконец этот **** проект!

Читать далее
Всего голосов 21: ↑8 и ↓13 -5
Просмотры 5.2K
Комментарии 14

Django Rest Framework для начинающих: как работает ModelSerializer

Блог компании Яндекс Практикум Python *Программирование *Django *API *
Tutorial

В предыдущих статьях мы подробно разобрали работу сериалайзера на основе классов BaseSerializer и Serializer, и теперь мы можем перейти к классу-наследнику ModelSerializer.


image


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


  • автоматическое создание полей сериалайзера на основе данных о корреспондирующих полях модели;
  • автоматическое включение в поля сериалайзера тех же валидаторов, которые есть в полях модели, а также при определённых условиях метавалидаторов;
  • заранее определённые методы create и update.

Общие принципы работы модельного сериалайзера как на чтение, так и на запись идентичны тому, как работает базовый класс Serializer.

Читать дальше →
Всего голосов 10: ↑9 и ↓1 +8
Просмотры 5.9K
Комментарии 0

Как мы оптимизировали i-запросы, а нашли неточности в документации Django

Python *PostgreSQL *Django *

В современных веб-приложениях большинство запросов к базе данных пишется не на сыром SQL, а с использованием объектно-реляционного отображения (ORM). Оно автоматически генерирует SQL-запросы по привычному объектно-ориентированному коду. Однако эти запросы не всегда оптимальны,  и с  ростом нагрузки на веб-приложение встает вопрос их оптимизации. Как раз в ходе такой оптимизации наша команда обнаружила, что документация Django с нами не совсем честна.

Читать далее
Всего голосов 5: ↑4 и ↓1 +3
Просмотры 3.4K
Комментарии 7

Django-sockpuppet, интересная альтернатива React, Vue, Angular или очередная заброшенная джанговская «батарейка»?

Django *
Из песочницы

Всем доброго времени суток!

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

Сейчас хайп вокруг современных javascript SPA фронтенд фреймворков особенно горяч, и во многом эта популярность вполне заслужена, эти технологии позволяют успешно выполнять практически любую задачу. Скорость SPA приложения может быть сравнима с десктоп приложениями, это достигается за счет перенаправления большей части ответственности с сервера на клиента. К сожалению, этот новый подход порождает все более сложные технологии, а работа разработчика, которая когда то была увлекательна и продуктивна стала значительно сложнее и монотоннее. Возможны ли альтернативы современным SPA фреймворкам? Возможно ли создавать полноценные reactive user interfaces быстро, просто и только на джанго? Далее хочу обратить Ваше внимание на интересный проект который может дать ответы на эти вопросы.

Читать далее
Всего голосов 16: ↑15 и ↓1 +14
Просмотры 6.4K
Комментарии 15

Наш опыт создания «Интенсива», или почему избежать ошибок не удастся

Блог компании БАРС Груп Python *Программирование *Django *Карьера в IT-индустрии

Всем привет! Меня зовут Дмитрий Чернышов, я руководитель группы разработки системы «БАРС.Бюджет-Бухгалтерия». Сегодня я поделюсь своим опытом создания обучающего курса для разработчиков.

Читать далее
Всего голосов 8: ↑7 и ↓1 +6
Просмотры 1.5K
Комментарии 3

Актуальный сборник шаблонов для создания проектов и приложений на Django

Python *Django *Nginx *ReactJS *

Репозиторий: https://github.com/denisxab/django-start-pack

Какая существует проблемы: Слишком много времени уходит на первоначальную настройку Django проекта. Существует много технологий которые уже стали неотъемлемыми зависимостями для Django проектов. Например:

Читать далее
Всего голосов 8: ↑1 и ↓7 -6
Просмотры 5.5K
Комментарии 12

Окей, Джанго, у меня к тебе несколько вопросов

Python *Программирование *Django *

Недавно я проходил очередное интервью, и меня спросили, пишу ли я на flask, на что я ответил, что я себя люблю, и поэтому пишу на django. Меня не взяли, потому что, кхм, у них, оказывается, много чего было на фласке, и вышло неловко. Да-да, я знаю, фласк крут, потому что он простой, всё что надо ставишь сам, а чего не надо там и так нет, но как по мне, всё равно потом получается django.

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

Читать далее
Всего голосов 93: ↑89 и ↓4 +85
Просмотры 31K
Комментарии 23

Behave test recorder. Запись сценариев автотестов

Блог компании БАРС Груп Тестирование IT-систем *Python *Программирование *Django *

Привет! Меня зовут Степан Лущий, я – тимлид команды тестирования компании «БАРС Груп». Мы занимаемся созданием автоматизированных тестов (автотест), инструментов для их написания, а также развитием инфраструктуры автотестирования. В этой статье я расскажу, как мы разработали инструмент, с помощью которого у нас получилось значительно сократить время реализации автотеста.

Читать далее
Всего голосов 7: ↑7 и ↓0 +7
Просмотры 3.2K
Комментарии 10

Django Rest Framework для начинающих: создаём API для записи и обновления данных (часть 2)

Блог компании Яндекс Практикум Python *Программирование *Django *API *
Tutorial

Продолжаем цикл статей, посвящённый основам Django Rest Framework. В предыдущей статье мы подробно рассмотрели, как сериалайзер валидирует входные данные.


В этой статье мы закрепим теорию на простом примере, а также затронем те вопросы, которые не успели рассмотреть раньше:


  • какое поле сериалайзера выбрать для ForeignKey-поля модели;
  • как сериалайзер работает с датами;
  • как устроен метод save сериалайзера.

А ещё мы напишем контроллер, который будет обрабатывать запросы к API на создание записи в БД.


image

Читать дальше →
Всего голосов 6: ↑6 и ↓0 +6
Просмотры 5K
Комментарии 1

Регулярные выражение Python в интерактивном режиме

Python *JavaScript *Django *

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

Поддерживаемые регулярные функции:

Читать далее
Всего голосов 10: ↑5 и ↓5 0
Просмотры 4.1K
Комментарии 12

Вклад авторов

Работа