From fa96d2fd7936992187298a438b1ab150e3e4da6b Mon Sep 17 00:00:00 2001 From: Wei Jia <437160499@163.com> Date: Thu, 18 Jul 2024 12:03:06 +0800 Subject: [PATCH 1/2] Make config decorator keep original function's __name__ --- pywebio/platform/page.py | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) diff --git a/pywebio/platform/page.py b/pywebio/platform/page.py index bc875141..fb66a5a7 100644 --- a/pywebio/platform/page.py +++ b/pywebio/platform/page.py @@ -2,8 +2,7 @@ import urllib.parse from collections import namedtuple from collections.abc import Mapping, Sequence -from functools import lru_cache -from functools import partial +from functools import lru_cache, partial from os import path, environ from tornado import template @@ -337,13 +336,14 @@ def __init__(self): def __call__(self, func): self.called = True try: - func = partial(func) # to make a copy of the function + _func = partial(func) # to make a copy of the function for key, val in configs.items(): if val: - setattr(func, '_pywebio_%s' % key, val) + setattr(_func, '_pywebio_%s' % key, val) + _func.__name__ = func.__name__ + return _func except Exception: - pass - return func + return func def __del__(self): # if not called as decorator, set the config to global if self.called: From e01cc4330f15cf20cd4f60bd3c87ccc5c9cc8edf Mon Sep 17 00:00:00 2001 From: Wei Jia <437160499@163.com> Date: Thu, 18 Jul 2024 14:36:17 +0800 Subject: [PATCH 2/2] fix code style --- pywebio/platform/page.py | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/pywebio/platform/page.py b/pywebio/platform/page.py index fb66a5a7..1de2c754 100644 --- a/pywebio/platform/page.py +++ b/pywebio/platform/page.py @@ -336,14 +336,14 @@ def __init__(self): def __call__(self, func): self.called = True try: - _func = partial(func) # to make a copy of the function + func = partial(func) # to make a copy of the function for key, val in configs.items(): if val: - setattr(_func, '_pywebio_%s' % key, val) - _func.__name__ = func.__name__ - return _func + setattr(func, '_pywebio_%s' % key, val) + func.__name__ = func.func.__name__ except Exception: - return func + pass + return func def __del__(self): # if not called as decorator, set the config to global if self.called: