Декораторы на заказ в Торнадо - PullRequest
0 голосов
/ 25 июня 2018

Я сталкиваюсь с ошибкой при попытке сделать собственный декоратор торнадо.

TypeError: post() missing 1 required positional argument: 'self'

Пример кода:

def decorate( function_name ):
    # Do something
    function_name()
    # Do something

class MainHandler( tornado.web.RequestHandler ):
    @decorate
    def post( self ):
        # Do whatever

Как передать контекст self декоратору?

1 Ответ

0 голосов
/ 25 июня 2018

Кажется, вы не передаете аргументы от декоратора декорированному методу.

Вот как должен выглядеть ваш декоратор:

def decorate(func):
    def wrapper(*args, **kwargs):
        # pass the received arguments to
        # the decorated function
        return func(*args, **kwargs)
    return wrapper
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...