angle-up arrow-clockwise arrow-counterclockwise arrow-down-up arrow-left at calendar card-list chat check envelope folder house info-circle pencil people person person-plus phone plus question-circle search tag trash x
27 ноября 2020 возле Peter
post main image
Я знаю, есть много статей на эту тему. Но я подумал, что было бы полезно написать об этом пост, потому что я не знал всех подробностей. Я предполагаю, что доступ к вашему сайту можно получить из интернета, используя URL 'without-www' и URL 'with-www'. Эта статья не о выборе URL веб-сайта в маркетинговых целях. Даже если вы используете URL 'with-www' для своего веб-сайта, вы все равно можете сообщить ...
Подробнее
25 ноября 2020 возле Peter
post main image
Это короткий пост о Flask и config variable SERVER_NAME. Как и многие разработчики, я столкнулся с этим в определенный момент, и подумал, что могу поделиться своей историей. Надеюсь, для некоторых это предотвратит головную боль. Мои сайты должны быть доступны, набрав в браузере следующие адреса: https://example.com = 'without-www' и т.п, https://www.example.com = 'with-www' Более того, ...
Подробнее
29 октября 2020 возле Peter
post main image
Это сообщение о том, как я использую Docker и Docker-composer для разработки и запуска моего сайта Flask с Celery и Redis. В интернете много статей об этом, и если вы ищете их, не забудьте поискать на сайте Github.com. Я просто взял кусочки и создал свою собственную установку. Перед тем, как вдаваться в подробности, я хочу упомянуть еще две вещи, которые возникли при добавлении Celery к ...
Подробнее
10 октября 2020 возле Peter
post main image
Возможность запуска асинхронных задач из вашего веб-приложения во многих случаях является обязательным условием. Одним из способов достижения этого является использование Celery. В интернете есть много статей и приведены некоторые примеры. Мне очень понравились записи Miguel Grinberg о Celery. Очень понятно, спасибо Miguel. Но пост Miguel и большинство других статей - это всего лишь введение. ...
Подробнее
30 сентября 2020 возле Peter
post main image
Я разработал один сайт Flask на Docker , но через некоторое время, когда мой код стал более стабильным, я захотел использовать такую же установку для других сайтов. Для одного сайта я сделал копию, потому что он должен был работать вчера. Но на самом деле я хотел поделиться всем кодом и некоторыми шаблонами. Конечно, каждый сайт имеет свой собственный статический каталог, каталог логов, шаблоны ...
Подробнее
22 сентября 2020 возле Peter
post main image
Это короткая заметка о том, что я хотел сделать давным-давно и для чего я, наконец, нашел некоторое время. На самом деле это был не случай TLT;DR (Слишком долго; не читал), а скорее что-то вроде TLT;DR (Слишком мало времени; не читал). Как вы вероятно знаете, файл Docker .dockerignore используется для предотвращения попадания определенных файлов и каталогов в ваш Docker image. Файл Docker .dockerignore ...
Подробнее
20 августа 2020 возле Peter
post main image
Проблема: у меня есть сайт, который отправляет электронные письма. Письма (мета) хранятся в базе данных перед отправкой в Postfix MTA. Каждое письмо, которое отправляет веб-сайт, имеет уникальный message-id, что-то вроде 159766775024.77.9154479190021576437@peterspython.com. Я хочу проверить, действительно ли письма отправляются, и добавить эту информацию в записи базы данных электронной почты (мета). Postfix ...
Подробнее
25 июля 2020 возле Peter
post main image
Тестирование - это тяжелая работа. Она полностью отличается от создания или модификации функциональности. Я знаю, я также разработал компьютерное оборудование, интегральные схемы, системы тестирования аппаратуры. Я написал тесты для CPUs, компьютерные продукты, разработал тестовые системы. С аппаратным обеспечением нельзя допускать ошибок. Ошибки могут стать концом Вашей компании. Добро пожаловать ...
Подробнее
26 июня 2020 Обновленный 25 июля 2020 возле Peter
post main image
Я решил временно перенести акцент с разработки программного обеспечения для моей CMS / Блога на более мелкий проект. Основная причина в том, что я надеялся узнать что-то новое о Python , что будет полезно. Я всегда хотел иметь свою собственную клиентскую программу IMAP . Возможно, на мой выбор также сильно повлияла некоторая неприятность клиента IMAP Dekko2 для Ubuntu Touch, операционной системы моего ...
Подробнее
17 июня 2020 возле Peter
post main image
При поиске чего-то в интернете вы иногда натыкаетесь на статью, которая прекрасно описывает то, что вы уже много лет рассказываете друзьям, коллегам. Независимо от того, являетесь ли вы издателем, разработчиком программного обеспечения, рекламной компанией, эта статья Тревора Джима - обязательная для прочтения. Вот первые строки: Интернет-реклама - это фирменный город 28 февраля 2017 года Если ...
Подробнее
17 июня 2020 возле Peter
post main image
Использование исключений в Python выглядит просто, но это не так. Наверное, перед написанием любого кода Python , но TL;DR. следует изучить работу с исключениями и обработку исключений. В интернете есть примеры, к сожалению, большинство из них очень тривиальны. Во всяком случае, я изучил это и придумал код, которым, как мне показалось, я с вами поделился. Оставьте комментарий, если у вас есть предложения. Что ...
Подробнее
29 мая 2020 возле Peter
post main image
Существует множество типов векторных иконок. В этой заметке я смотрю только на иконки SVG, и ограничиваюсь навигационными иконками, иногда называемыми также иконками интерфейса. Эти иконки не только красиво выглядят на сайтах, но и имеют цвет и масштаб, как шрифты. И они очень функциональны. Представьте себе кнопку с текстом ''Правка''. Замените этот текст карандашом, и вы получите больше места на ...
Подробнее
12 мая 2020 возле Peter
post main image
На этом сайте запущен Flask. Он использует DispatcherMiddleWare для запуска приложения фронтэнда и приложения администрирования. В документах Flask указано, что приложения Flask в этом случае полностью изолированы друг от друга. Это верно, но часто между этими приложениями есть много кода, которым мы хотим поделиться. Вещи, которыми мы хотим поделиться Оба приложения используют одну и ту же ...
Подробнее
26 апреля 2020 возле Peter
post main image
Этот вебсайт использует Flask, (обычный) SQLAlchemy с Alembic для миграций и MariaDb. Если вы их не используете, то этот пост, скорее всего, не то, что вы ищете. В предыдущем посте я написал, почему многие сайты должны использовать UUID Primary Keys вместо Integer Primary Keys. Даже если у вас есть высокопроизводительный сайт, то, вероятно, только несколько таблиц отвечают за эту производительность. ...
Подробнее
16 апреля 2020 возле Peter
post main image
У вас есть сайт, и он отлично работает. Но вы заметили, что некоторые посетители пытаются испортить ваши формы. Они приходят с определенных IP-адресов. Также есть боты, которые сканируют ваш сайт. Некоторые из них необходимы, но другие должны держаться подальше. Разве вы не ненавидите это? Ненавижу. В прошлом я однажды написал модуль, который возвращал не очень приятный ответ очень медленно, байт-байт, ...
Подробнее
9 апреля 2020 возле Peter
post main image
Мы все знаем Integer Autoincrement Primary Key. Работает отлично, многие программы делают это таким образом. Это быстро. Но у него также есть ограничения. Альтернативой Integer Autoincrement Primary Key является UUID (Universally Unique IDentifier) Primary Key. UUID - 128-битное число. Оно может быть представлено, например, строкой: 05390f2b-48e8-45c7-8ae4-08272dc69122 или шестнадцатеричную ...
Подробнее
24 марта 2020 возле Peter
post main image
Flask горячий. Все любят Flask. Думаю, основная причина в том, что так просто начать с Flask. Вы создаете virtual environment, копируете-вставляете несколько строк кода из какого-нибудь примера, указываете ваш браузер на 127.0.0.1:5000 и вот ваша страница. Затем вы немного взломаете шаблон Jinja и получаете красивую страницу. Вы даже можете запустить Flask на Raspberry Pi, не правда ли, это ...
Подробнее
10 марта 2020 возле Peter
post main image
Проблема: клиент хочет приложение с определенной функциональностью и хочет этого вчера. Что вы делаете, так это ищете решение plug-and-play, библиотеки и/или расширения. Вы говорите клиенту, что можете это сделать, клиент счастлив, вы это делаете. Например, вы берете Wordpress, выбираете и настраиваете некоторые плагины. Проблема решена или нет? Да, проблема решена, но как долго? Через несколько месяцев ...
Подробнее
29 февраля 2020 возле Peter
post main image
Я никогда не проверял, работает ли защита CSRF в моем приложении Flask , на этом сайте. Включено ли оно по умолчанию? Из документации по расширению Flask_WTF: Любое представление, использующее FlaskForm для обработки запроса, уже получает защиту CSRF . И из текста сообщения Miguel Grinberg 'Cookie Security for Flask Applications': Если вы работаете с вашими веб-формами с расширением ...
Подробнее
22 февраля 2020 возле Peter
post main image
При работе над системой комментариев я впервые столкнулся с проблемой наличия нескольких форм WTForms на одной странице. На каждой странице также есть форма поиска, но это не форма POST . Он делает GET. Система комментариев использует две формы: Comment form Comment reply form Форма комментария находится непосредственно под элементом содержимого, постом в блоге или страницей, форма ответа ...
Подробнее

Добро пожаловать

Этот сайт является многоязычным CMS / Блог я строю с Python, фреймворк Flask и SQLAlchemy. Развертывается на моем сервере ISPConfig3 (Nginx + Mariadb) с использованием Docker, который также используется для разработки. Подробнее об этом сайте.