Skip to content

Instantly share code, notes, and snippets.

View kurtgn's full-sized avatar

Mikhail Novikov kurtgn

  • Fasttrack
  • Moscow Russia
View GitHub Profile
@kurtgn
kurtgn / circular_import_solution.py
Last active June 26, 2019 08:01
mypy circular import problem
# circular import:
# node.py
from typing import Iterable
from nodeset import NodeSet
from typing import Iterable
from abstract_node import AbstractNode
@kurtgn
kurtgn / nodb_template_tag.py
Last active June 22, 2019 12:02
Django-тег, запрещающий SQL в шаблонах
import contextlib
import json
from django.db import connection
from django import template
register = template.Library()
@kurtgn
kurtgn / single.py
Created June 14, 2019 13:42
одна функция
def api_dict_with_extensions(message: FBMessage) -> dict:
"""
Хелпер, который генерирует api_dict и в зависимости от урлов,
подложенных в кнопки, добавляет им messenger_extensions перед отправкой.
Это живет здесь, а не в state_objects,
потому что state_objects ничего не знают о настройках джанго
и о списке безопасных доменов.
"""
@kurtgn
kurtgn / several.py
Last active June 14, 2019 13:46
несколько функций
def get_buttons(
api_dict: dict,
message: Union[FBThreeButtonMessage, FBCarouselMessage]
) -> Iterable[dict]:
"""
Достать кнопки из api_dict.
Путь для доставания определяется типом сообщения.
Кнопки бывают только у двух типов сообщения, для остальных типов ничего не делаем
"""
@kurtgn
kurtgn / gist:d480d7b8900916b86f4e0f22cb41bd4c
Last active October 24, 2018 17:15
орел или решка
# -*- coding: utf-8 -*-
from random import randint
from time import sleep
number = randint(0, 3)
print('Бросаю монетку...')
sleep(1)
@kurtgn
kurtgn / gist:5cd0e72b1de04dc33071dddff74bbe3a
Created May 5, 2017 11:24
Тестовое задание Fasttrack
12321313