Category Archives: programming

csv reader iterator should return strings, not bytes (did you open the file in text mode?) python3

Был код на python2.7 для получения данных из csv файла который отлично работал, csv файл представлял собой список с числовыми id, разделенными переносом строк: [crayon-6767d50326ec6351942057/] После перехода на python3.6 начала падать ошибка: iterator should return strings, not bytes (did...

Python Unable to initialize logging subsystem

При инициализации логирования в python было отловлено исключение Unable to initialize logging subsystem, код достаточно простой и вопросов особо не возникало, например: [crayon-6767d50330bb9764832321/] Или вот: [crayon-6767d50330bc2354204671/] Все оказалось очень просто, Config.LOGLEVEL имел значение...

Расположение реальных конфигов серверов в MAMP Mac OS X

Базовые конфиги MAMP лежат здесь: /Applications/MAMP/conf Например, для nginx /Applications/MAMP/conf/nginx/nginx.conf Сформированные конфиги с пользовательскими данными лежат здесь: /Library/Application Support/appsolute/MAMP PRO/conf/ Например, для nginx /Library/Application Support/appsolute/MAMP...

jinja2 и HTML Escaping

Напомню, что у jinja2 есть 2 режима экранирования переменных: ручной и автоматический, и зависит от настроек приложения. Если у вас стоит ручной режим и есть необходимость экранировать используйте фильтр e. {{ user.username|e }} В моем же случае было...

SQLAlchemy использование label в HAVING

При работе с SQLAlchemy часто возникает необходимость использовать в HAVING условиях алиасы из селекта, которые реализуются с помощью label. В таком случае следует воспользоваться средством literal_column Простой пример: [crayon-6767d503310cd173028198/] ...