Обновить
6.65

Django *

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

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

Как мы строим UI для рекламных систем

Время на прочтение8 мин
Количество просмотров3.6K
image

Вместо вступления


Ранее в нашем блоге мы писали, чем занимается компания IPONWEB — мы автоматизируем показ рекламы в интернете. Наши системы принимают решения не только на основе исторических данных, но и активно используют информацию, полученную в реальном времени. В случае DSP (Demand Side Platform — рекламная платформа для рекламодателей), рекламодатель (или его представитель) должен создать и загрузить рекламный баннер (креатив) в одном из форматов (картинка, видео, интерактивный баннер, картинка+текст и т.д.), выбрать аудиторию пользователей, которым этот баннер будет показан, определить сколько раз можно показать рекламу одному пользователю, в каких странах, на каких сайтах, на каких устройствах, и отразить это (и многое другое) в настройках таргетинга рекламной кампании, а также распределить рекламные бюджеты. Для SSP (Supply Side Platform — рекламная платформа для владельцев рекламных площадок) владелец сайта (мобильного приложения, билборда, телевизионного канала) должен определить рекламные места на своем ресурсе и указать, например, какие категории рекламы он готов на них показывать. Все эти настройки делаются вручную заблаговременно (не в момент показа рекламы) с помощью пользовательского интерфейса. В этой статье я расскажу про наш подход к построению таких интерфейсов при условии, что их много, они похожи друг на друга и при этом обладают индивидуальными особенностями.
Читать далее

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

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

Предистория


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

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

Как мы ставили пробоотбор в СИБУРЕ на новые рельсы

Время на прочтение9 мин
Количество просмотров7.6K
И что из этого получилось

Привет!

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



Меня зовут Катя, я владелец продукта одной из команд в СИБУРЕ, и сегодня я расскажу, как мы улучшали жизнь (по крайней мере, в рабочее время) специалистов, отбирающих пробы, и других участников этого увлекательного процесса. Под катом — о гипотезах и их проверке, об отношении к пользователям твоего цифрового продукта и немного о том, как у нас все устроено.

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

Время на прочтение7 мин
Количество просмотров3.7K

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

Читать дальше →

Предварительная программа PyConRu-2019: два Python Core Developer’а, докладчики из Anaconda, Intel, JetBrains, Яндекса

Время на прочтение9 мин
Количество просмотров3.1K
Привет, Хабр!

24-25 июня в 95 км от Москвы пройдет седьмая российская конференция для python-программистов PYCON RUSSIA 2019.

Уже в программе: Raymond Hettinger (Python core developer, США), Michael Foord (Python core developer, Англия), Travis Oliphant (автор SciPy, NumPy, Anaconda, США), Antonio Cuni (PyPy core developer, Италия), Григорий Бакунов (Яндекс), Андрей Власовских (JetBrains), Кирилл Борисов (Booking.com), Вадим Пуштаев (Mail.Ru Group), Александр Хаёров (Chainstack), Иван Цыганов (Positive Technologies), Алексей Кузьмин (ДомКлик), Злата Обуховская (евангелист Moscow Python), Василий Литвинов (Intel). И это только предварительная программа.

Под катом — подробности программы.
Читать дальше →

Как работают веб-приложения

Время на прочтение6 мин
Количество просмотров249K
Это статья для начинающих разработчиков и тех, кто хочет немного ориентироваться в терминах и технологиях современных веб-приложений. В статье написано о том, чем веб-приложения отличаются от сайтов, какие бывают веб-приложения, из чего они состоят и как работают.
Читать дальше →

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

Время на прочтение10 мин
Количество просмотров58K

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

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

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

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

Понимаю, это громкое заявление. Позвольте мне его обосновать.
Читать дальше →

Приглашаем выступить на PyCon Russia 2019

Время на прочтение3 мин
Количество просмотров1.4K
Всем привет!

Седьмой PyConRu пройдёт 24-25 июня в отеле «Cronwell Яхонты Таруса» в 95 км от Москвы.

У PyConRu особенный формат: два дня участники и докладчики проводят на природе, слушают доклады и мастер-классы от российских и иностранных спикеров, выступают на Lightning Talks, а вечером веселятся на афтепати с костром и песнями под гитару.

До 5 мая мы принимаем заявки на доклады. В этом посте — некоторые темы, которые мы хотим обсудить на конференции, и инструкция, как стать докладчиком.


Читать дальше →

DjangoCon Europe 2019. А не сдох ли ваш пони?

Время на прочтение9 мин
Количество просмотров15K
image

С 9 по 14 апреля в Копенгагене проходила конференция DjangoCon Europe 2019. Полный надежд и стремлений я прибыл на данное мероприятие, а уезжал в глубоком смятении. В статье я попробую передать мои впечатления от конференции и прокомментировать столь резкую смену отношения к Django.
Disclaimer: в статье присутствует нетолерантность, безаппеляционность суждений и неоправданная критика.
Читать дальше →

Не ORMом единым

Время на прочтение8 мин
Количество просмотров5.4K

Не ORMом единым


Всем привет! Я руковожу отделом партнерской разработки (Partners Development) в сервисе бронирования отелей Ostrovok.ru. В этой статье я хотел бы рассказать про то, как на одном проекте мы использовали Django ORM.


На самом деле я слукавил, название должно было быть "Не ORMом единым". Если вам интересно, почему я так написал, а также если:


  • У вас в стеке Django, и вам хочется выжать из ORM максимум возможностей, а не просто Model.objects.all(),
  • Вы хотите перенести часть бизнес-логики на уровень баз данных,
  • Или вы хотите узнать, почему самая частая отмазка разработчиков в B2B.Ostrovok.ru "так исторически сложилось",

… добро пожаловать под кат.


кдпв

Читать дальше →

Практикум RHEL 8 Beta: Собираем работающие веб-приложения

Время на прочтение10 мин
Количество просмотров3.9K
RHEL 8 Beta предлагает разработчикам много новых возможностей, перечисление которых может занять страницы, однако, изучать новое всегда лучше на практике, поэтому ниже предлагаем пройти практикум реального создания инфраструктуры приложений на базе Red Hat Enterprise Linux 8 Beta.



За основу возьмем Python, комбинацию Django и PostgreSQL, довольно распространенную связку для создания приложений, и сконфигурируем RHEL 8 Beta для работы с ними. Потом добавим еще пару (несекретных) ингредиентов.
Читать дальше: Собираем работающие веб-приложения с RHEL 8 Beta

Django under microscope

Время на прочтение14 мин
Количество просмотров14K
Если по докладу Артёма Малышева (proofit404) будут снимать фильм, то режиссером выступит Квентин Тарантино — один фильм про Django он уже снял, снимет и второй. Все подробности из жизни внутренних механизмов Django от первого байта HTTP-запроса до последнего байта ответа. Феерия работы парсер-форм, остросюжетная компиляция SQL, спецэффекты реализации шаблонизатора для HTML. Кем и как управляется connection pool? Всё это в хронологическом порядке обработки WSGI-объектов. На всех экранах страны — расшифровка «Django under microscope».



О спикере: Артём Малышев — основатель проекта Dry Python и Core-разработчик Django Channels версии 1.0. Пишет на Python 5 лет, помогал организовывать митапы «Rannts» по Python в Нижнем Новгороде. Артём может быть знаком вам под ником PROOFIT404. Презентация к докладу хранится здесь.

Использование учетных записей Joomla в проекте на Django

Время на прочтение6 мин
Количество просмотров2.8K

Допустим что сайт, которым пользуются ваши пользователи, написан на Joomla, но для создания нового продукта для вашей аудитории вы выбрали связку Python/Django.


Как следствие, возникает необходимость использовать в Django учетные записи пользователей из базы данных Joomla.


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


Почитав документацию Django, stack overflow и потратив некоторое время, получилось нижеописанное решение, которое по максимуму использует рекомендуемые практики разработки под Django.

Читать дальше →

Ближайшие события

Почему в «Тинькофф-журнале» выбирают Django

Время на прочтение13 мин
Количество просмотров11K
Мы в «Python Junior подкаст» — подкасте для тех, кто хочет лучше разбираться в Python — стараемся всячески способствовать стремлению учиться. Приглашаем экспертов, задаем каверзные вопросы, получаем советы, чему и как учиться начинающему Python-разработчику, или не начинающему, или не Python — всякое бывает.

Сегодня вашему вниманию предлагается текстовая версия нашей беседы с Арсением Габдуллиным, разработчиком Тинькофф-журнала, на тему его будущего доклада на Moscow Python Conf++, но без спойлеров.

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



В беседе участвуют:

  • Григорий Петров, евангелист MoscowPython, руководитель программного комитета Moscow Python Conf ++;
  • Арсений Габдуллин, разработчик Тинькофф-журнала, докладчик MoscowPython Conf++;
  • Злата Обуховская, тимлид Nvidia, евангелист MoscowPython, член программного комитета Moscow Python Conf++;
  • Валентин Домбровский, соорганизатор и сооснователь MoscowPython,

Валентин Домбровский: Арсений, твой доклад без спойлеров — о чем ты нам расскажешь на конференции?

PyCon Russia 2019: ответы на главные вопросы

Время на прочтение4 мин
Количество просмотров3.5K
Седьмой PyConRu пройдёт 24-25 июня в отеле «Cronwell Яхонты Таруса» в 95 км от Москвы. Формат — двухдневная конференция на природе с российскими и иностранными докладчиками, мастер-классами, Lightning Talks и афтепати.

Если коротко ответить на все вопросы, то: регистрация открыта, до 1 мая принимаем заявки на доклады, к нам снова приедет Раймонд Хеттингер. Ниже все подробности.


Читать дальше →

Удалённое управление UART'ом через Web

Время на прочтение5 мин
Количество просмотров12K

Начнём с железа


image Работал я как-то на одном заводе, где лепили всякую электронику, не шибко сложную, и иногда подпадавшую под определение «Интернет вещей». По большей части, всякие датчики для охранных систем: датчики дыма, шума, проникновения, огня и всякое другое. Ассортимент изделий был широчайший, партии иногда были меньше 500 штук, и едва ли не под каждое изделие приходилось делать отдельный Test Fixture — по сути, просто жестяная коробка, в которую изделие на тестах ставилось, прижималось крышкой, и снизу контактные иглы прижимались к контактным точкам на печатной плате, как-то так:
Читать дальше →

Разворачиваем Kubernetes на десктопе за несколько минут с MicroK8s

Время на прочтение5 мин
Количество просмотров48K
Начать работать с Kubernetes не всегда бывает просто. Не у всех есть необходимая для разворачивания полноценного кластера Kubernetes инфраструктура. Для локальной работы Kubernetes предлагет утилиту Minikube. Minikube — достаточно простое и удобное средство, и есть несколько обучающих курсов по работете с Minikube. Но, все же, о Minikube нельзя сказать, что с помощью этой утилиты можно за несколько минут развернуть среду Kubernetes.

Сегодня я хочу рассказать о пакете MicroK8s, который без преувеличения позволяет развернуть Kubernetes локально за несколько минут, и начать разработку. Не требуется даже предустановленных Docker и Kubernetes, т.к. все включено. В предлагаемом Вам уроке будет рассмотрен деплой приложения Django в локальной среде Kubernetes.

В качестве источника я шел вслед за серией статей Mark Gituma, в которых описана аналогичная работа, но только с Minikube, а не с MicroK8s.

Все же есть одно требование, которое необходимо удовлетворить до начала работы. У Вас должен быть установлен Snap, что в свою очередь означает, что у Вас должен быть установлен Linux.
Читать дальше →

«Удаление» объектов в Django

Время на прочтение6 мин
Количество просмотров18K


Рано или поздно перед разработчиками встаёт задача удаления ненужных данных. И чем сложнее сервис, тем больше нюансов необходимо учесть. В данной статье я расскажу, как мы реализовали «удаление» в базе данных с сотней связей.
Читать дальше →

Без ансамбля

Время на прочтение9 мин
Количество просмотров7.1K


Решили мы однажды заняться автоматизацией наших рутинных рабочих моментов. Создать у себя ансамбль(ansible) или что-нибудь в этом роде. Я полез на сайт ансамбля, посмотрел как он работает … подключается к удаленному серверу через ssh и выполняет какие-то там скрипты... Стоп, подумал я, разве для этого нужен ансамбль? Я и без ансамбля, сам ..., один… могу это сделать! А чтобы не только лишь я это мог, решил написать вэб приложение. Приложение назвали Update Server, сокращенно UpS.

Ворнинг! Под катом много картинок и пара гифок.
Посмотреть что из этого вышло

Multi-page SPA на Питоне

Время на прочтение15 мин
Количество просмотров12K
Мост между Python и React

Сова – это нано-фреймворк, который можно встроить в другие фреймворки.
Картинка с sova.online, на котором запущено 3 http сервера:
http://sova.online/ — просто Falcon
http://sova.online:8000/ — просто Django
http://sova.online:8001/ — просто Python (логин: 1, пароль: 1)
Там же исходные коды и инструкция по установке. Там же нет рекламы.


Читать дальше →

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