【问题标题】:Custom Decorators in TornadoTornado 中的自定义装饰器
【发布时间】:2018-06-25 11:46:51
【问题描述】:

我在尝试制作自定义龙卷风装饰器时遇到错误。

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 的上下文传递给装饰器?

【问题讨论】:

    标签: python tornado decorator python-decorators


    【解决方案1】:

    您似乎没有将装饰器中的参数传递给装饰方法。

    你的装饰器应该是这样的:

    def decorate(func):
        def wrapper(*args, **kwargs):
            # pass the received arguments to
            # the decorated function
            return func(*args, **kwargs)
        return wrapper
    

    【讨论】:

      猜你喜欢
      • 2018-04-11
      • 2013-02-06
      • 2020-07-11
      • 2019-09-16
      • 2020-09-04
      • 1970-01-01
      • 2020-05-19
      • 2020-11-21
      • 2018-06-05
      相关资源
      最近更新 更多