2
У меня есть декоратор, который я использую для некоторых методов класса. Похоже, что этоМогу ли я использовать тот же декоратор метода класса и статического метода?
def api_caller(logger_name):
def api_caller_decorator(method):
@wraps(method)
def caller_wrapper(self, *args, **kwargs):
logger = log_wrap(logger_name)
kwargs['api'] = create_api_instance(kwargs['api'])
logger.info('worker authenticated')
return method(self, logger=logger, *args, **kwargs)
return caller_wrapper
return api_caller_decorator
Я хочу использовать эту декоратора вне класса, есть способ сделать это без переосмысления и вручную исключить self
аргумент?
Является 'всегда logger' второго параметра? – jonrsharpe
Для случаев, когда я хочу использовать декоратор на регистраторе, всегда необходимо. Я сделал аргумент ключевого слова так, чтобы порядок можно было изменить. – LetsPlayYahtzee
В этом случае просто игнорируйте тот факт, что 'args [0]' is 'self', тогда он будет работать с ним или без него. – jonrsharpe